1 If you find inaccuracies in this list, please send mail to
3 of these, you should consider sending mail to the same address, to
4 find out whether anyone else is working on it.
10 Below is a list of problems identified during the GDB 5.0 release
11 cycle. People hope to have these problems fixed in 5.1.
15 Wow, three bug reports for the same problem in one day! We should
16 probably make fixing this a real priority :-).
18 Anyway, thanks for reporting.
20 The following patch will fix the problems with setting breakpoints in
21 dynamically loaded objects:
23 http://sources.redhat.com/ml/gdb-patches/2000-05/msg00230.html
25 This patch isn't checked in yet (ping Michael/JimB), but I hope this
26 will be in the next GDB release.
28 There should really be a test in the testsuite for this problem, since
29 it keeps coming up :-(. Any volunteers?
35 GDB 5.1 - New features
36 ======================
38 The following new features should be included in 5.1.
45 The following code cleanups will hopefully be applied to GDB 5.1.
49 GDB 5.1 - Known Problems
50 ========================
56 The z8k has suffered bit rot and is known to not build. The problem
57 was occuring in the opcodes directory.
61 The BFD directory requires bug-fixed AUTOMAKE et.al.
63 AUTOMAKE 1.4 incorrectly set the TEXINPUTS environment variable. It
64 contained the full path to texinfo.tex when it should have only
65 contained the directory. The bug has been fixed in the current
66 AUTOMAKE sources. Automake snapshots can be found in:
67 ftp://sources.redhat.com/pub/gdb/infrastructure
68 and ftp://sources.redhat.com/pub/binutils
72 Solaris 8 x86 CURSES_H problem
73 http://sources.redhat.com/ml/gdb/2000-07/msg00038.html
75 The original problem was worked around with:
79 * configure.in: Enable autoconf to find curses.h on Solaris 2.8.
80 * configure: Regenerate.
82 When building both GDB and SID using the same source tree the problem
83 will still occure. sid/component/configure.in mis-configures
84 <curses.h> and leaves wrong information in the config cache.
93 GDB 5.2 - New features
94 ======================
98 GCC 3.0 ABI support (but hopefully sooner...).
102 Objective C/C++ support (but hopefully sooner...).
106 Import of readline 4.2
113 The following cleanups have been identified as part of GDB 5.2.
117 Remove old code that does not use ui_out functions and all the related
118 "ifdef"s. This also allows the elimination of -DUI_OUT from
119 Makefile.in and configure.in.
125 Eliminate warnings for all targets on at least one host for one of the
126 -W flags. Flags up for debate include: -Wswitch -Wcomment -trigraphs
127 -Wtrigraphs -Wunused-function -Wunused-label -Wunused-variable
128 -Wunused-value -Wchar-subscripts -Wtraditional -Wshadow -Wcast-qual
129 -Wcast-align -Wwrite-strings -Wconversion -Wstrict-prototypes
130 -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls
131 -Woverloaded-virtual -Winline
135 Deprecate, if not delete, the following:
140 Replaced by, on the target side
142 and on core-gdb side:
143 {read,write}_register_gen()
144 Remote.c will need to use something
145 other than REGISTER_BYTE() and
146 REGISTER_RAW_SIZE() when unpacking
149 STORE_PSEUDO_REGISTER
150 FETCH_PSEUDO_REGISTER
151 Now handed by the methods
152 gdbarch_{read,write}_register()
153 which sits between core GDB and
157 REGISTER_CONVERT_TO_RAW
158 REGISTER_CONVERT_TO_VIRTUAL
159 I think these three are redundant.
160 gdbarch_register_{read,write} can
161 do any conversion it likes.
163 REGISTER_VIRTUAL_SIZE
164 MAX_REGISTER_VIRTUAL_SIZE
165 REGISTER_VIRTUAL_TYPE
166 I think these can be replaced by
168 FRAME_REGISTER_TYPE(frame, regnum)
169 REGISTER_TYPE(regnum)
173 FRAME_REGISTER_INFO (frame, ...)
176 If nothing else rename this so that
177 how it relates to rawreg and the
181 The size of the cache can be computed
184 IS_TRAPPED_INTERNALVAR
185 The pseudo registers should eventually make
190 Obsolete the targets:
198 Obsolete the protocols:
202 ``As of version 5.3, WindRiver has removed the RDB server (RDB
203 protocol support is built into gdb).'' -- Till.
207 Restructure gdb directory tree so that it avoids any 8.3 and 14
212 Convert GDB build process to AUTOMAKE.
214 See also sub-directory configure below.
216 The current convention is (kind of) to use $(<header>_h) in all
217 dependency lists. It isn't done in a consistent way.
221 GDB 5.2 - Known Problems
222 ========================
226 Code Cleanups: General
227 ======================
229 The following are more general cleanups and fixes. They are not tied
230 to any specific release.
233 New Features and Fixes
234 ======================
236 These are harder than cleanups but easier than work involving
237 fundamental architectural change.
244 New languages come onto the scene all the time.
248 Re: Various C++ things
250 RTTI for g++ should be using the typeinfo functions rather than the
251 vtables. The typeinfo functions are always at offset 4 from the
252 beginning of the vtable, and are always right. The vtables will have
253 weird names like E::VB sometimes. The typeinfo function will always
254 be "E type_info function", or somesuch.
256 value_virtual_fn_field needs to be fixed so there are no failures for
257 virtual functions for C++ using g++.
259 Testsuite cases are the major priority right now for C++ support,
260 since i have to make a lot of changes that could potentially break
271 Investiagate ways of reducing memory.
275 Investigate ways of improving load time.
282 There are never to many testcases.
286 Better thread testsuite.
290 Better C++ testsuite.
294 Architectural Changes: General
295 ==============================
297 These are harder than simple cleanups / fixes and, consequently
298 involve more work. Typically an Architectural Change will be broken
299 down into a more digestible set of cleanups and fixes.
303 Architectural Change: Multi-arch et al.
304 =======================================
306 The long term objective is to remove all assumptions that there is a
307 single target with a single address space with a single instruction
308 set architecture and single application binary interface.
310 This is an ongoing effort. The first milestone is to enable
311 ``multi-arch'' where by all architectural decisions are made at
314 It should be noted that ``gdbarch'' is really ``gdbabi'' and
315 ``gdbisa''. Once things are multi-arched breaking that down correctly
316 will become much easier.
320 Architectural Change: MI, LIBGDB and scripting languages
321 ========================================================
323 See also architectural changes related to the event loop. LIBGDB
324 can't be finished until there is a generic event loop being used by
327 The long term objective is it to be possible to integrate GDB into
332 Architectural Change: Async
333 ===========================
335 While GDB uses an event loop when prompting the user for input. That
336 event loop is not exploited by targets when they allow the target
337 program to continue. Typically targets still block in (target_wait())
338 until the program again halts.
340 The closest a target comes to supporting full asynchronous mode are
341 the remote targets ``async'' and ``extended-async''.