* gdb.base/call-ar-st.exp: Relax patterns matching tab characters.
[deliverable/binutils-gdb.git] / gdb / TODO
CommitLineData
c906108c
SS
1If you find inaccuracies in this list, please send mail to
2bug-gdb@prep.ai.mit.edu. If you would like to work on any of these,
3you should consider sending mail to the same address, to find out
4whether anyone else is working on it.
5
138f88c0
AC
6
7TODO: GDB 5.0
8=============
9
10Here are _all_ the issues that have been raised vis-a-vis the 5.0
11release. Also check the GDB, and other, mail archives
12(http://sourceware.cygnus.com/ml/gdb/).
13
14If, however, you fix something, then feel free to tweek this file
15(deleting the problem). Just send a note to gdb-patches so that I see
16the change.
17
18The names in paren are those that might know more about the problem.
19They don't necessarily indicate the people that will fix the problem.
20
21--
22
23GDB 5.0: Must have
c906108c
SS
24------------------
25
138f88c0
AC
26These are things that have been identifed as must-have for this
27release of GDB.
28
29--
30
138f88c0
AC
31GDB 5.0: Nice to have
32---------------------
33
34These are things that might make it in 5.0 but don't sit in the
35critical path. If they miss the 5.0 cut then they definitly should
36make the follow-on release.
37
38--
39
40Generic: lin-thread cannot handle thread exit (Mark Kettenis, Michael Snyder)
41http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00525.html
42
43The thread_db assisted debugging code doesn't handle exiting threads
44properly, at least in combination with glibc 2.1.3 (the framework is
45there, just not the actual code). There are at least two problems
46that prevent this from working.
47
48As an additional reference point, the pre thread_db code didn't work
49either.
50
51--
52
53Java (Anthony Green, David Taylor)
54
55Anthony Green has started contributing late breaking Java patches:
56
57Patch: java tests
58http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00512.html
59
60Patch: java booleans
61http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00515.html
62
63Patch: handle N_MAIN stab
64http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00527.html
65
66It should be able to squeeze these in.
67
68--
69
70Pascal (Pierre Muller, David Taylor)
71
72The pascal support patches nave been added to the patch data base. I
73[cagney] strongly suspect that they are better suited for 5.1.
74
67edb2c6
AC
75Indent -gnu ?
76http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00496.html
77
782 pascal language patches inserted in database
79http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00521.html
80
138f88c0
AC
81--
82
83Programs run under GDB have SIGCHLD masked.
84
85[I think this can be worked around by using the action command -
86cagney]
87
88--
89
90GNU/Linux/x86 and random thread signals (and Solaris/SPARC but not
91Solaris/x86)
92
93Christopher Blizzard writes:
94
95So, I've done some more digging into this and it looks like Jim
96Kingdon has reported this problem in the past:
97
98http://sourceware.cygnus.com/ml/bug-gdb/1999-10/msg00058.html
99
100I can reproduce this problem both with and without Tom's patch. Has
101anyone seen this before? Maybe have a solution for it hanging around?
102:)
103
104There's a test case for this documented at:
105
106when debugging threaded applications you get extra SIGTRAPs
107http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=9565
108
109[There should be a GDB testcase - cagney]
110
111--
112
113IRIX?
114
115Benjamin Gamsa wrote:
116
117Has anyone successfully built the latest (from cvs) gdb on IRIX6.4 or
118later? The first problem I hit is that proc-api.c includes
119sys/user.h, which no longer exists under IRIX6.4. If I comment out
120that include, the next problem I hit is that PIOCGETPR and PIOCGETU
121are no longer defined in IRIX6.4 (presumably related to the
122disappearance of user.h).
123
124--
125
126Regressions (prologue) with devel GCC.
127
128The current head of the GCC branch doesn't co-operate well with GDB
129over debug information.
130
131Regressions problem (200 failures)
132http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00475.html
133
134--
135
136RFA: infrun.c, breakpoint.c: Kludge for Solaris x86 hardware watchpoint support
137http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00664.html
138
139Unfortunately I'd need the following kludge to work around a Solaris
140x86 kernel problem with hardware watchpoint support. See the comment
141in the patches for a description of the problem.
142
143--
144
145RFD: infrun.c: No bpstat_stop_status call after proceed over break ?
146http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00665.html
147
148I am currently trying to fix a GDB bug with missing watchpoint triggers
149after proceeding over a breakpoint on x86 targets.
150
151--
152
67edb2c6
AC
153x86 linux GDB and SIGALRM (???)
154http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00803.html
155
156--
157
158Migrate qfThreadInfo packet -> qThreadInfo. (Andrew Cagney)
159
160Add support for packet enable/disable commands with these thread
161packets. General cleanup.
162
163[PATCH] Document the ThreadInfo remote protocol queries
164http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00832.html
165
166[PATCH] "info threads" queries for remote.c
167http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00831.html
168
169--
170
171MI documentation in GDB user guide. (Andrew Cagney, Elena Zannoni,
172Stan Shebs, anyone else?)
173
174> (Are there plans to make gdbmi.texi be part of the manual as well?)
175
176I'd like to see it go in there sooner rather than later too. Otherwise
177you're introducing discrepancies between the manual and the documentation,
178and everybody is confused - witness the lack of doc for the tracing
179commands still, some two years after they were added...
180
9d6d78f2
AC
181Discussion on MI can be found on the thread: [PATCH] GDB command-line
182switches and annotations docs
67edb2c6
AC
183http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00639.html
184
185--
186
9d6d78f2
AC
187Revised UDP support (was: Re: [Fwd: [patch] UDP transport support])
188http://sourceware.cygnus.com/ml/gdb-patches/2000-04/msg00000.html
189
190--
191
192problems loading shared libraries - with attached test case
193http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00820.html
194
195Hi, I'm having problems loading shared libraries. This is with a
196build of gdb out of cvs that I pulled and built on March 27th and has
197been there for at least a week. I haven't gone back further than
198that. This is with the gcc that is shipping with Red Hat 6.2:
199
200Reading specs from
201/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs gcc version
202egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
203
204I'm using "set auto-solib-add 0" after main has been called. If I use
205"shar" to load a shared library manually once I can't use it again to
206load another shared library later. Please see the attached log for an
207example of how to reproduce the problem.
208
209--
210
138f88c0
AC
211GDB 5.0: Won't have
212-------------------
213
214The following are on hold until GDB 5.0 is branched. In general they
215won't go in as they unsettle the GDB sources.
216
217--
218
219ATTRIBUTE_UNUSED
220
221The need for this as almost been eliminated. The next version of GCC
222(assuming cagney gets the revised patch approved) will be able to
223supress unused parameter warnings.
224
225--
226
227Delete macro TARGET_BYTE_ORDER_SELECTABLE.
228
229Patches in the database.
230
231--
232
233Updated readline
234
235Readline 4.? is out. A merge wouldn't hurt.
236
237--
238
239Purge PARAMS
240
241Something to do post 5.0 branch
242
243--
244
67edb2c6
AC
245Elimination of make_cleanup_func. (Andrew Cagney)
246
247make_cleanup_func elimination
248http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00791.html
249http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00814.html
250
251--
252
67edb2c6
AC
253ChangeLog.mi vs ChangeLog-mi (Andrew Cagney)
254Needs further debate.
255
256Re: [PATCH] Add change-log variables to more MI files
257http://sourceware.cygnus.com/ml/gdb-patches/2000-q1/msg00811.html
258
259--
260
9d6d78f2
AC
261Re: gdb-cvs fails on freebsd-elf
262http://sourceware.cygnus.com/ml/gdb/2000-04/msg00004.html
263
264FreeBSD haven't contributed their local GDB changes back to the master
265sources (they would at least need an FSF assignment by all
266individuales that contributed to the work). Given the strong
267likelhood that this will never happen, I'd suggest that a better
268strategy would be for someone (with an FSF/GDD assignment) to do a new
269(clean-room) implementation. That can then be accepted in time for
270GDB 5.1.
271
272--
273
eb3d1d19
DB
274Re: Various C++ things
275
276value_headof/value_from_vtable_info are worthless, and should be removed.
277The one place in printcmd.c that uses it should use the RTTI functions.
278
279RTTI for g++ should be using the typeinfo functions rather than the vtables.
280The typeinfo functions are always at offset 4 from the beginning of the vtable,
281and are always right. The vtables will have weird names like E::VB sometimes.
282The typeinfo function will always be "E type_info function", or somesuch.
283
284value_virtual_fn_field needs to be fixed so there are no failures for virtual
285functions for C++ using g++.
286
287Testsuite cases are the major priority right now for C++ support, since i have
288to make a lot of changes that could potentially break each other.
289
290
291--
138f88c0
AC
292GDB 5.0: Test results
293---------------------
294
295Please include:
296
297 o the output of `config.guess`
298 o the date
299 o the compiler
300 o a note mentioning the reason
301 for any serious failures.
302
303--
304
305alpha-dec-osf4.0a, vendor compiler, 2000-03-04
306
307Still has many compile warnings (mostly relating back to PTR vs void*)
308but it did compile using:
309
310 CC=cc .../configure
311 make
312
313Test results are:
314
315# of expected passes 6223
316# of unexpected failures 103
317# of unexpected successes 2
318# of expected failures 196
319# of unresolved testcases 6
320# of unsupported tests 1
321
322Looking at the output it would appear that GDB is stepping into some
323functions instead of ``next'' ing over them:
324
325 35 dummy();
326 (gdb) next
327 dummy () at /home/cagney/GDB-DEJAGNU/src/gdb/testsuite/gdb.base/all-types.c:41
328 41 {
329
330Since there is no active maintainer, I'd consider this sufficient for
3315.0 :-/
332
333--
334
335sparc-sun-solaris2.6, egcs-2.91.66, 2000-02-10
336http://sourceware.cygnus.com/ml/gdb-testers/2000-q1/msg00030.html
337
338There is a SIGTRAP problem that occures in ptrace.exp (Cagney to
339expand on).
340
341# of expected passes 6420
342# of unexpected failures 7
343# of expected failures 199
344
345--
346
347solaris 2.5.1 sparc?, 2.9-gnupro-99r1, 2000-02-10
348http://sourceware.cygnus.com/ml/gdb-testers/2000-q1/msg00032.html
349
350# of expected passes 6420
351# of unexpected failures 6
352# of expected failures 199
353
354--
355
356sparc-unknown-netbsdelf1.4P, egcs-1.1.2+, 2000-03-01
357
358This is with a very recent kernel.
359
360# of expected passes 6055
361# of unexpected failures 88
362# of unexpected successes 1
363# of expected failures 190
364# of unresolved testcases 59
365
366--
367
368GNU/Linux PPC
369http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00185.html
370
371Kevins merged it all in.
372
373--
374
375Unixware
376
377Builds ok. Problems with some of the thread code. Unfortunate but
378not a show stopper. Nick D's still looking at it.
379
380Re: uw-threads issues
381http://sourceware.cygnus.com/ml/gdb/2000-q1/msg00025.html
382
383
384 ------------------------------------------------
385
386
387General Wish List
388=================
389
67edb2c6
AC
390--
391
392GDBARCH cleanup (Andrew Cagney)
393
394The non-generated parts of gdbarch.{sh,h,c} should be separated out
395into gdbarch-utils.[hc] (Name ok).
396
397The ``info architecture'' command should be replaced with a fixed
398``set architecture'' (implemented using the command.c enum code).
399
400Document that gdbarch_init_ftype could easily fail because it didn't
401identify an architecture.
402
403--
404
405Check that GDB can handle all BFD architectures (Andrew Cagney)
406
407There should be a test that checks that BFD/GDB are in sync with
408regard to architecture changes. Something like a test that first
409queries GDB for all supported architectures and then feeds each back
410to GDB.. Anyone interested in learning how to write tests? :-)
411
412--
413
c906108c
SS
414This list is probably not up to date, and opinions vary about the
415importance or even desirability of some of the items.
416
b83266a0
SS
417Document trace machinery.
418
419Document overlay machinery.
420
421Extend .gdbinit mechanism to specify name on command line, allow for
422lists of files to load, include function of --tclcommand.
423
424@c This does not work (yet if ever). FIXME.
425@c @item --parse=@var{lang} @dots{}
426@c Configure the @value{GDBN} expression parser to parse the listed languages.
427@c @samp{all} configures @value{GDBN} for all supported languages. To get a
428@c list of all supported languages, omit the argument. Without this
429@c option, @value{GDBN} is configured to parse all supported languages.
430
c906108c
SS
431Add an "info bfd" command that displays supported object formats,
432similarly to objdump -i.
433
434START_INFERIOR_TRAPS_EXPECTED need never be defined to 2, since that
435is its default value. Clean this up.
436
437It should be possible to use symbols from shared libraries before we know
438exactly where the libraries will be loaded. E.g. "b perror" before running
439the program. This could maybe be done as an extension of the "breakpoint
440re-evaluation" after new symbols are loaded.
441
442Make single_step() insert and remove breakpoints in one operation.
443
444Speed up single stepping by avoiding extraneous ptrace calls.
445
446Speed up single stepping by not inserting and removing breakpoints
447each time the inferior starts and stops.
448
449Breakpoints should not be inserted and deleted all the time. Only the
450one(s) there should be removed when we have to step over one. Support
451breakpoints that don't have to be removed to step over them.
452
453Update gdbint.texinfo to include doc on the directory structure and
454the various tricks of building gdb.
455
456Do a tutorial in gdb.texinfo on how to do simple things in gdb.
457E.g. how to set a breakpoint that just prints something and continues.
458How to break on aborts. Etc.
459
460Provide "voodoo" debugging of core files. This creates a zombie
461process as a child of the debugger, and loads it up with the data,
462stack, and regs of the core file. This allows you to call functions
463in the executable, to manipulate the data in the core file.
464
465GDB reopens the source file on every line, as you "next" through it.
466
467Referencing the vtbl member of a struct doesn't work. It prints OK
468if you print the struct, but it gets 0 if you try to deref it.
469
470Persistent command history: A feature where you could save off a list
471of the commands you did, so you can edit it into something that will bring
472the target to the same place every time you source it.
473This would also be useful for automated fast watchpointing; if you go
474past the place where it watchpoints, you just start it over again and
475do it more carefully.
476
477Deal with the SunOS 4.0 and 4.1.1 ptrace bug that loses the registers if
478the stack is paged out.
479
480Finish the C++ exception handling stub routines. Lint points them out
481as unused statics functions.
482
483Perhaps "i source" should take an argument like that of "list".
484
485See if core-aout.c's fetch_core_registers can be used on more machines.
486E.g. MIPS (mips-xdep.c).
487
488unpack_double() does not handle IEEE float on the target unless the host
489is also IEEE. Death on a vax.
490
491Set up interface between GDB and INFO so that you can hop into interactive
492INFO and back out again. When running under Emacs, should use Emacs
493info, else fork the info program. Installation of GDB should install
494its texinfo files into the info tree automagically, including the readline
495texinfo files.
496
497"help address" ought to find the "help set print address" entry.
498
499Remove the VTBL internal guts from printouts of C++ structs, unless
500vtblprint is set.
501
502Remove "at 0xnnnn" from the "b foo" response, if `print address off' and if
503it matches the source line indicated.
504
505The prompt at end of screen should accept space as well as CR.
506
507Check STORE_RETURN_VALUE on all architectures. Check near it in tm-sparc.h
508for other bogosities.
509
510Check for storage leaks in GDB, I'm sure there are a lot!
511
512vtblprint of a vtbl should demangle the names it's printing.
513
514Backtrace should point out what the currently selected frame is, in
515its display, perhaps showing "@3 foo (bar, ...)" or ">3 foo (bar,
516...)" rather than "#3 foo (bar, ...)".
517
518"i program" should work for core files, and display more info, like what
519actually caused it to die.
520
521"x/10i" should shorten the long name, if any, on subsequent lines.
522
523Check through the code for FIXME comments and fix them. dbxread.c,
524blockframe.c, and plenty more. (I count 634 as of 940621 - sts)
525
526"next" over a function that longjumps, never stops until next time you happen
527to get to that spot by accident. E.g. "n" over execute_command which has
528an error.
529
530"set zeroprint off", don't bother printing members of structs which
531are entirely zero. Useful for those big structs with few useful
532members.
533
534GDB does four ioctl's for every command, probably switching terminal modes
535to/from inferior or for readline or something.
536
537terminal_ours versus terminal_inferior: cache state. Switch should be a noop
538if the state is the same, too.
539
540ptype $i6 = void??!
541
542Clean up invalid_float handling so gdb doesn't coredump when it tries to
543access a NaN. While this might work on SPARC, other machines are not
544configured right.
545
546"b value_at ; commands ; continue ; end" stops EVERY OTHER TIME!
547Then once you enter a command, it does the command, runs two more
548times, and then stops again! Bizarre... (This behaviour has been
549modified, but it is not yet 100% predictable when e.g. the commands
550call functions in the child, and while there, the child is interrupted
551with a signal, or hits a breakpoint.)
552
553help completion, help history should work.
554
555Check that we can handle stack trace through varargs AND alloca in same
556function, on 29K.
557
558wait_for_inferior loops forever if wait() gives it an error.
559
560"i frame" shows wrong "arglist at" location, doesn't show where the args
561should be found, only their actual values.
562
563There should be a way for "set" commands to validate the new setting
564before it takes effect.
565
566A mess of floating point opcodes are missing from sparc-opcode.h.
567Also, a little program should test the table for bits that are
568overspecified or underspecified. E.g. if the must-be-ones bits
569and the must-be-zeroes bits leave some fields unexamined, and the format
570string leaves them unprinted, then point this out. If multiple
571non-alias patterns match, point this out too. Finally, there should
572be a sparc-optest.s file that tries each pattern out. This file
573should end up coming back the same (modulo transformation comments)
574if fed to "gas" then the .o is fed to gdb for disassembly.
575
576Eliminate all the core_file_command's in all the xdep files.
577Eliminate separate declarations of registers[] everywhere.
578
579"ena d" is ambiguous, why? "ena delete" seems to think it is a command!
580
581Perhaps move the tdep, xdep, and nat files, into the config
582subdirectories. If not, at least straighten out their names so that
583they all start with the machine name.
584
585inferior_status should include stop_print_frame. It won't need to be
586reset in wait_for_inferior after bpstat_stop_status call, then.
587
588i line VAR produces "Line number not known for symbol ``var''.". I
589thought we were stashing that info now!
590
591We should be able to write to random files at hex offsets like adb.
592
593Make "target xxx" command interruptible.
594
595Handle add_file with separate text, data, and bss addresses. Maybe
596handle separate addresses for each segment in the object file?
597
598Handle free_named_symtab to cope with multiply-loaded object files
599in a dynamic linking environment. Should remember the last copy loaded,
600but not get too snowed if it finds references to the older copy.
601
602Generalize and Standardize the RPC interface to a target program,
603improve it beyond the "ptrace" interface, and see if it can become a
604standard for remote debugging. (This is talking about the vxworks
605interface. Seems unlikely to me that there will be "a standard" for
606remote debugging anytime soon --kingdon, 8 Nov 1994).
607
608Remove all references to:
609 text_offset
610 data_offset
611 text_data_start
612 text_end
613 exec_data_offset
614 ...
615now that we have BFD. All remaining are in machine dependent files.
616
617When quitting with a running program, if a core file was previously
618examined, you get "Couldn't read float regs from core file"...if
619indeed it can't. generic_mourn_inferior...
620
621Have remote targets give a warning on a signal argument to
622target_resume. Or better yet, extend the protocols so that it works
623like it does on the Unix-like systems.
624
625Sort help and info output.
626
627Re-organize help categories into things that tend to fit on a screen
628and hang together.
629
630renote-nindy.c handles interrupts poorly; it error()s out of badly
631chosen places, e.g. leaving current_frame zero, which causes core dumps
632on the next command.
633
634Add in commands like ADB's for searching for patterns, etc. We should
635be able to examine and patch raw unsymboled binaries as well in gdb as
636we can in adb. (E.g. increase the timeout in /bin/login without source).
637
638Those xdep files that call register_addr without defining it are
639probably simply broken. When reconfiguring this part of gdb, I could
640only make guesses about how to redo some of those files, and I
641probably guessed wrong, or left them "for later" when I have a
642machine that can attempt to build them.
643
644When doing "step" or "next", if a few lines of source are skipped between
645the previous line and the current one, print those lines, not just the
646last line of a multiline statement.
647
648When searching for C++ superclasses in value_cast in valops.c, we must
649not search the "fields", only the "superclasses". There might be a
650struct with a field name that matches the superclass name. This can
651happen when the struct was defined before the superclass (before the
652name became a typedef).
653
654Handling of "&" address-of operator needs some serious overhaul
655for ANSI C and consistency on arrays and functions.
656 For "float point[15];":
657ptype &point[4] ==> Attempt to take address of non-lvalue.
658 For "char *malloc();":
659ptype malloc ==> "char *()"; should be same as
660ptype &malloc ==> "char *(*)()"
661call printf ("%x\n", malloc) ==> weird value, should be same as
662call printf ("%x\n", &malloc) ==> correct value
663
664Fix dbxread.c symbol reading in the presence of interrupts. It
665currently leaves a cleanup to blow away the entire symbol table when a
666QUIT occurs. (What's wrong with that? -kingdon, 28 Oct 1993).
667
668Mipsread.c reads include files depth-first, because the dependencies
669in the psymtabs are way too inclusive (it seems to me). Figure out what
670really depends on what, to avoid recursing 20 or 30 times while reading
671real symtabs.
672
673value_add() should be subtracting the lower bound of arrays, if known,
674and possibly checking against the upper bound for error reporting.
675
676mipsread.c symbol table allocation and deallocation should be checked.
677My suspicion is that it's full of memory leaks.
678
679SunOS should have a target_lookup_symbol() for common'd things allocated
680by the shared library linker ld.so.
681
682When listing source lines, check for a preceding \n, to verify that
683the file hasn't changed out from under us.
684
685When listing source lines, eat leading whitespace corresponding to the
686line-number prefix we print. This avoids long lines wrapping.
687
688mipsread.c needs to check for old symtabs and psymtabs for the same
689files, the way it happens for dbxread.c and coffread.c, for VxWorks
690incremental symbol table reloading.
691
692Get all the remote systems (where the protocol allows it) to be able to
693stop the remote system when the GDB user types ^C (like remote.c
694does). For ebmon, use ^Ak.
695
696Possible feature: A version of the "disassemble" command which shows
697both source and assembly code ("set symbol-filename on" is a partial
698solution).
699
700investigate "x/s 0" (right now stops early) (I think maybe GDB is
701using a 0 address for bad purposes internally).
702
703Make "info path" and path_command work again (but independent of the
704environment either of gdb or that we'll pass to the inferior).
705
706Make GDB understand the GCC feature for putting octal constants in
707enums. Make it so overflow on an enum constant does not error_type
708the whole type. Allow arbitrarily large enums with type attributes.
709Put all this stuff in the testsuite.
710
711Make TYPE_CODE_ERROR with a non-zero TYPE_LENGTH more useful (print
712the value in hex; process type attributes). Add this to the
713testsuite. This way future compilers can add new types and old
714versions of GDB can do something halfway reasonable.
715
716Clean up formatting of "info registers" on MIPS and 88k. See if it
717is possible to do this generically across all target architectures.
718
719GDB gets bfd/corefile.c and gdb/corefile.c confused (this should be easy to
720repeat even with something more recent than GDB 4.9).
721
722Check that unmatched RBRAC doesn't abort().
723
724Fix mdebugread.c:parse_type to do fundamental types right (see
725rs6000_builtin_type in stabsread.c for what "right" is--the point is
726that the debug format fixes the sizes of these things and it shouldn't
727depend on stuff like TARGET_PTR_BIT and so on. For mdebug, there seem
728to be separate bt* codes for 64 bit and 32 bit things, and GDB should
729be aware of that). Also use a switch statement for clarity and speed.
730
731Investigate adding symbols in target_load--some targets do, some
732don't.
733
734Put dirname in psymtabs and change lookup*symtab to use dirname (so
735/foo/bar.c works whether compiled by cc /foo/bar.c, or cd /foo; cc
736bar.c).
737
738Merge xcoffread.c and coffread.c. Use breakpoint_re_set instead of
739fixup_breakpoints.
740
741Fix byte order and int size sins in tm-a29k.h
742(EXTRACT_RETURN_VALUE). Perhaps should reproduce bug and verify fix
743(or perhaps should just fix it...).
744
745Make a watchpoint on a constant expression an error (or warning
746perhaps)
747
748Make a watchpoint which contains a function call an error (it is
749broken now, making it work is probably not worth the effort).
750
751Re-do calls to signal() in remote.c, and inflow.c (set_sigint_trap and
752so on) to be independent of the debugging target, using target_stop to
753stop the inferior. Probably the part which is now handled by
754interrupt_query in remote.c can be done without any new features in
755the debugging target.
756
757New test case based on weird.exp but in which type numbers are not
758renumbered (thus multiply defining a type). This currently causes an
759infinite loop on "p v_comb".
760
761Nuke baseclass_addr.
762
763Nuke USG define.
764
765"source file more recent" loses on re-read
766
767Fix 386 floating point so that floating point registers are real
768registers (but code can deal at run-time if they are missing, like
769mips and 68k). This would clean up "info float" and related stuff.
770
771Look at Solaris bug in interrupt.exp. Can get out of syscall with
772PRSABORT (syscall will return EINTR) but merely doing that leads to a
773"can't read memory" error.
774
775gcc -g -c enummask.c then gdb enummask.o, then "p v". GDB complains
776about not being able to access memory location 0.
777
778-------------------- enummask.c
779enum mask
780{
781 ANIMAL = 0,
782 VEGETABLE = 1,
783 MINERAL = 2,
784 BASIC_CATEGORY = 3,
785
786 WHITE = 0,
787 BLUE = 4,
788 GREEN = 8,
789 BLACK = 0xc,
790 COLOR = 0xc,
791
792 ALIVE = 0x10,
793
794 LARGE = 0x20
795} v;
796
797If try to modify value in file with "set write off" should give
798appropriate error not "cannot access memory at address 0x65e0".
799
800Why do we allow a target to omit standard register names (NO_STD_REGS
801in tm-z8k.h)? I thought the standard register names were supposed to
802be just that, standard.
803
c906108c
SS
804Allow core file without exec file on RS/6000.
805
806Make sure "shell" with no arguments works right on DOS.
807
808Make gdb.ini (as well as .gdbinit) be checked on all platforms, so
809the same directory can be NFS-mounted on unix or DOS, and work the
810same way.
811
812cd ~/tmp/<M-?> causes infinite loop (where ~/tmp is a directory).
813
814Get SECT_OFF_TEXT stuff out of objfile_relocate (might be needed to
815get RS/6000 to work right, might not be immediately relevant).
816
817Clean up add_toc_to_loadinfo
818
819Think about attached processes and sharing terminal.
820
821John sez in reference to ignoring errors from tcsegpgrp if attach_flag:
822set_tty_state should not have any trouble with attached processes.
823Instead, the tty handling should leave the pgrp of the tty alone when
824attaching to processes (perhaps pass terminal_init_inferior a flag
825saying whether we're attaching).
826
827PAGE_SIZE redefined warnings on AIX. Probably should be using
828BFD_PAGE_SIZE throughout BFD.
829
830Rewrite proceed, wait_for_inferior, and normal_stop to clean them up.
831Suggestions:
832
833 1) Make each test in wait_for_inferior a seperate subroutine
834 call.
835 2) Combine wait_for_inferior and normal_stop to clean up
836 communication via global variables.
837 3) See if you can find some way to clean up the global
838 variables that are used; possibly group them by data flow
839 and information content?
840
841Work out some kind of way to allow running the inferior to be done as
842a sub-execution of, eg. breakpoint command lists. Currently running
843the inferior interupts any command list execution. This would require
844some rewriting of wait_for_inferior & friends, and hence should
845probably be done in concert with the above.
846
847Add function arguments to gdb user defined functions.
848
849Add convenience variables that refer to exec file, symbol file,
850selected frame source file, selected frame function, selected frame
851line number, etc.
852
853Add a "suspend" subcommand of the "continue" command to suspend gdb
854while continuing execution of the subprocess. Useful when you are
855debugging servers and you want to dodge out and initiate a connection
856to a server running under gdb.
857
858Add stab information to allow reasonable debugging of inline functions
859(possibly they should show up on a stack backtrace? With a note
860indicating that they weren't "real"?).
861
862Modify the naked "until" command to step until past the current source
863line, rather than past the current pc value. This is tricky simply
864because the low level routines have no way of specifying a multi-line
865step range, and there is no way of saying "don't print stuff when we
866stop" from above (otherwise could just call step many times).
867
868Modify the handling of symbols grouped through BINCL/EINCL stabs to
869allocate a partial symtab for each BINCL/EINCL grouping. This will
870seriously decrease the size of inter-psymtab dependencies and hence
871lessen the amount that needs to be read in when a new source file is
872accessed.
873
874Do an "x/i $pc" after each stepi or nexti.
875
876Modify all of the disassemblers to use printf_filtered to get correct
877more filtering.
878
879Modify gdb to work correctly with Pascal.
880
881Add a command for searching memory, a la adb. It specifies size,
882mask, value, start address. ADB searches until it finds it or hits
883an error (or is interrupted).
884
b83266a0
SS
885Remove the range and type checking code and documentation, if not
886going to implement.
887
c906108c
SS
888# Local Variables:
889# mode: text
890# End:
This page took 0.074933 seconds and 4 git commands to generate.