* gdb.base/ending-run.c (main): Avoid messing with setvbuf; just

call `fflush' after every `printf', so that the output is produced
at predictable points, regardless of whatever buffering does (or
doesn't) take place.
* gdb.base/ending-run.exp: Adjust tests to expect output to appear
at different points.
This commit is contained in:
Jim Blandy 2002-01-21 18:46:33 +00:00
parent 9596feeafe
commit 808a31f526
3 changed files with 14 additions and 5 deletions

View File

@ -1,3 +1,12 @@
2002-01-21 Jim Blandy <jimb@redhat.com>
* gdb.base/ending-run.c (main): Avoid messing with setvbuf; just
call `fflush' after every `printf', so that the output is produced
at predictable points, regardless of whatever buffering does (or
doesn't) take place.
* gdb.base/ending-run.exp: Adjust tests to expect output to appear
at different points.
2002-01-20 Daniel Jacobowitz <drow@mvista.com>
* gdb.c++/inherit.exp: Update copyright years.

View File

@ -22,12 +22,12 @@ int main()
int i;
p = (int *) malloc( 4 );
setvbuf (stdout, alloca (64), _IOLBF, 64);
for (i = 1; i < 10; i++)
{
printf( "%d ", callee( i ));
fflush (stdout);
}
printf( " Goodbye!\n" );
printf( " Goodbye!\n" ); fflush (stdout);
return 0;
}

View File

@ -129,10 +129,10 @@ gdb_expect {
# See if we can step out with control. The "1 2 3" stuff
# is output from the program.
#
gdb_test "cont" ".*Breakpoint.*31.*"
gdb_test "cont" ".*1 2 7 14 23 34 47 62 79.*Breakpoint.*31.*"
if ![gdb_skip_stdio_test "Step to return"] {
gdb_test "next" ".*1 2 7 14 23 34 47 62 79 Goodbye!.*32.*" \
gdb_test "next" ".*Goodbye!.*32.*" \
"Step to return"
} else {
gdb_test "next" "" ""