This is the mail archive of the gdb-patches@sources.redhat.com 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]

RFA: force output at predictable points in ending-run.c



2002-01-12  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.

Index: gdb/testsuite/gdb.base/ending-run.c
===================================================================
RCS file: /cvs/cvsfiles/devo/gdb/testsuite/gdb.base/ending-run.c,v
retrieving revision 1.4
diff -c -r1.4 ending-run.c
*** gdb/testsuite/gdb.base/ending-run.c	2001/09/18 17:50:36	1.4
--- gdb/testsuite/gdb.base/ending-run.c	2002/01/12 06:47:54
***************
*** 22,33 ****
      int i;
  
      p = (int *) malloc( 4 );
!     setvbuf (stdout, alloca (64), _IOLBF, 64);
      for (i = 1; i < 10; i++)
          {
              printf( "%d ", callee( i ));
!             
          }
!     printf( " Goodbye!\n" );
      return 0;
  }
--- 22,33 ----
      int i;
  
      p = (int *) malloc( 4 );
! 
      for (i = 1; i < 10; i++)
          {
              printf( "%d ", callee( i ));
!             fflush (stdout);
          }
!     printf( " Goodbye!\n" ); fflush (stdout);
      return 0;
  }
Index: gdb/testsuite/gdb.base/ending-run.exp
===================================================================
RCS file: /cvs/cvsfiles/devo/gdb/testsuite/gdb.base/ending-run.exp,v
retrieving revision 1.23
diff -c -r1.23 ending-run.exp
*** gdb/testsuite/gdb.base/ending-run.exp	2001/11/10 22:27:26	1.23
--- gdb/testsuite/gdb.base/ending-run.exp	2002/01/12 06:47:54
***************
*** 129,138 ****
  # See if we can step out with control.  The "1 2 3" stuff
  # is output from the program.
  #
! gdb_test "cont" ".*Breakpoint.*31.*"
  
  if ![gdb_skip_stdio_test "Step to return"] {
!     gdb_test "next" ".*1 2 7 14 23 34 47 62 79  Goodbye!.*32.*" \
  	    "Step to return"
  } else {
      gdb_test "next" "" ""
--- 129,138 ----
  # See if we can step out with control.  The "1 2 3" stuff
  # is output from the program.
  #
! 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" ".*Goodbye!.*32.*" \
  	    "Step to return"
  } else {
      gdb_test "next" "" ""


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