[PATCH] dejagnu lib/framework.exp
Jimmy Guo
guo@cup.hp.com
Fri Jul 28 17:26:00 GMT 2000
And here is my analysis of the UNRESOLVED message:
UNRESOLVED is printed if errcnt >= error_threshold (set at 1).
errcnt is reset after each test point.
delete_breakpoint can call perror _easily_ if pattern matching becomes
out of sync:
Sometimes test codes might have something like:
send_gdb <command_string>
<continue on without matching for gdb response>
The resulting gdb prompt will stay in the expect buffer and
sometimes if GDB response is slow it starts a chain reaction of
all following tests matching "$gdb_prompt $" ... sooner or later
it reaches proc delete_breakpoint and that proc will happily
issue an perror :(
In other cases, delete_breakpoint would confuse itself with the
tight loop of 'send_gdb "y\n"' and 'exp_continue'.
I'll patch up some of the tests, and will do some larger scale changes
in lib/gdb.exp to:
1) have more robust delete_breakpoint implementation.
2) capture and handle runto perrors (reset errcnt afterwards) instead of
spilling into the next test point.
I will find the time to refresh my memory on commiting the patch via CVS
(yes I have enough information on how to do this ...), and commit this
framework.exp patch.
- Jimmy
On Fri, 28 Jul 2000, Fernando Nasser wrote:
>Jimmy, your patch is correct. Having it as global prevents someone to
>mistakenly set it on the test file and calling pass from inside a proc
>and causing it not to see it.
>
>However, I am not aware of ay test that sets this (used to xfail depending
>on compiler flags used).
>
>And it is probably unrelated to your problem as well.
>
>But please check this in so both pass and fail look the same.
More information about the Gdb-patches
mailing list