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] Fix problem with scope.exp test, skipping past init0 call


While Jim's already approved the patch, and it's fine, some other
notes...

On Sun, Feb 12, 2006 at 03:10:01PM -0500, Fred Fish wrote:
> I noticed the following failures while running the gdb testsuite and
> decided to investigate:
> 
>   Running /src/latest/trunk/src/gdb/gdb/testsuite/gdb.base/scope.exp ...
>   FAIL: gdb.base/scope.exp: next over init0() in main
>   FAIL: gdb.base/scope.exp: print filelocal_bss
>   FAIL: gdb.base/scope.exp: print 'scope0.c'::filelocal_bss in test_at_main
>   FAIL: gdb.base/scope.exp: print 'scope1.c'::filelocal_bss

What platform and compiler version is this?  It doesn't fail for me.

> The problem was triggered by the fact that the breakpoint on main was
> being set at the opening brace and then the first next only took us to
> the init0 call.  This might be a bug in it's own right, but scope.exp
> is supposed to handle this as a side effect of an attempt to skip
> __main:
> 
>     # skip past init.  There may be a call to __main at the start of
>     # main, so the first next may only get us to the init0 call.
>     if [gdb_test "next" "$decimal.*foo \\(\\);" "next over init0() in main"  "$decimal.*init0 \\(\\);" "next"] {
>       gdb_suppress_tests ;
>     }

Well, that's supposed to skip a call to __main(), which GCC generates
on very few platforms... stopping at the opening brace is definitely
a bug in its own right, in the debug info or in the prologue skipper.


-- 
Daniel Jacobowitz
CodeSourcery


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