This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] ada testsuite: False FAILs with gcc debug info


On Mon, 28 Mar 2011 18:50:22 +0200, Joel Brobecker wrote:
> Just a thought: Perhaps it might be easier to flip runtimes if you
> provide the runtime with debug info as a second runtime.  There is
> a way to do this, and then the user controls which one he wants using
> --RTS=<rts-name> (only when the default one is not the one he wants).

I do not understand this much.  I have the single system only compiler, which
also provides debug info for all its parts.  While I can have some special GCC
builds still with the default system compiler the GDB testsuite should work.


> This is incorrect, but I cannot reproduce (we should be able to get
> the same behavior by recompiling the program with "-f -a", which tells
> gnatmake to recompile everything, including runtime files).

`gnatmake -f -a -g foo' works but it gives the same results for me.


> And type Character_Set does not match type String:

It does match:

(gdb) set language c
(gdb) ptype ada__strings__maps__Oeq
type = boolean (ada__strings__maps__character_set___XP1 &, ada__strings__maps__character_set___XP1 &)
(gdb) set language auto
(gdb) ptype ada.strings.maps.character_set
type = array (character) of boolean <packed: 1-bit elements>
(gdb) ptype "a"
type = array (1 .. 1) of character

and ada_type_match for TYPE_CODE_ARRAY returns 1 without checking whether the
array's target type matches.  And both these types are arrays.  Why
Character_Set should not match String with this ada_type_match implementation?


> I think the debugging info must be incorrect.

So far it seems to me ada_type_match has a bug, does not it?


> > gdb/testsuite/
> > 2011-03-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
> > 
> > 	* gdb.ada/arrayparam.exp (print first after function call): Use
> > 	explicit package name.  Add a comment
> > 	(print lasta after function call): Rename ...
> > 	(print last after function call): ... it and use explicit package
> > 	name.
> > 	(print length after function call): Use explicit package name.
> > 	* gdb.ada/str_ref_cmp.exp (operator = works for strings): New test.
> > 	* gdb.ada/sym_print_name.exp: Change `i' to `integervar'.
> > 	(multiple matches for symbol i): Rename ...
> > 	(multiple matches for symbol integervar): ... it.
> > 	* gdb.ada/sym_print_name/foo.adb (Foo): Change `I' to `IntegerVar'.
> > 	* gdb.ada/sym_print_name/pck.ads (Pck): Likewise.
> 
> This is OK.

Therefore checked in so that it no longer occasionally gives false
regressions.
	http://sourceware.org/ml/gdb-cvs/2011-03/msg00308.html


Thanks,
Jan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]