1. 14 Jun, 2001 3 commits
  2. 13 Jun, 2001 36 commits
  3. 12 Jun, 2001 1 commit
    • porting.texi: Add documentation about libstdc++-v3-specific macros that are currently... · ddf1e652
      	libstdc++/2071
      	* porting.texi: Add documentation about libstdc++-v3-specific
      	macros that are currently included in os_defines.h files.
      
      	* config/basic_file_stdio.h (sys_getc): New method.
      	(sys_ungetc): New method.
      	* include/bits/basic_file.h: (sys_getc): New method signature.
      	(sys_ungetc): New method signature.
      
      	* include/bits/fstream.tcc (underflow): Add conditional code
      	paths which avoid using short seeks on streams (especially
      	useful when the stream might be interactive or a pipe).  At
      	the moment, this alternate path only avoids seeking when the
      	``buffer size'' of underflow() is 1 since the C standard only
      	guarantees buffer space for one ungetc (this technique could
      	be extended since *-*-solaris* supports buffering for 4 calls
      	to ungetc and *-*-*bsd* supports buffering limited only by
      	memory resources).  Also, _GLIBCPP_AVOID_FSEEK must be defined
      	in a port's os_defines.h file for this alternate path to even
      	be considered.  As a bonus, the idiom of using getc/ungetc
      	requires no system calls whereas fseek maps to one or two
      	system call(s) on many platforms.
      
      	* config/os/bsd/freebsd/bits/os_defines.h (_GLIBCPP_AVOID_FSEEK):
      	Define it.
      	* config/os/solaris/solaris2.5/bits/os_defines.h
      	(_GLIBCPP_AVOID_FSEEK): Likewise.
      	* config/os/solaris/solaris2.6/bits/os_defines.h
      	(_GLIBCPP_AVOID_FSEEK): Likewise.
      	* config/os/solaris/solaris2.7/bits/os_defines.h
      	(_GLIBCPP_AVOID_FSEEK): Likewise.
      
      From-SVN: r43278
      Loren J. Rittle committed