aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2001-03-19 20:49:58 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2001-03-19 20:49:58 +0000
commitaddb3faa558bf7422040430bfe161ab6ef1be92b (patch)
treeff23e329c7b87fbbca42f966a386a0d1cbe78e5f
parent843b04fb90dac46f9abdcbaeb18bf2911c818124 (diff)
downloadsrc-addb3faa558bf7422040430bfe161ab6ef1be92b.tar.gz
src-addb3faa558bf7422040430bfe161ab6ef1be92b.zip
Virgin import of GCC 2.95.3's libio -- the C++ iostream facility.
Notes
Notes: svn path=/vendor/gcc/dist/; revision=74481
-rw-r--r--contrib/libio/ChangeLog32
-rw-r--r--contrib/libio/iolibio.h8
-rw-r--r--contrib/libio/iostream.cc10
-rw-r--r--contrib/libio/libio.h11
-rw-r--r--contrib/libio/libioP.h52
-rw-r--r--contrib/libio/parsestream.h2
-rw-r--r--contrib/libio/stdio/ChangeLog4
-rw-r--r--contrib/libio/stdstreams.cc2
-rw-r--r--contrib/libio/streambuf.h4
-rw-r--r--contrib/libio/tests/ChangeLog4
-rw-r--r--contrib/libio/testsuite/ChangeLog4
11 files changed, 95 insertions, 38 deletions
diff --git a/contrib/libio/ChangeLog b/contrib/libio/ChangeLog
index d78e5056a4e4..b4564ded4713 100644
--- a/contrib/libio/ChangeLog
+++ b/contrib/libio/ChangeLog
@@ -1,3 +1,35 @@
+Fri Mar 16 12:46:19 GMT 2001 Bernd Schmidt (bernds@redhat.com)
+
+ * gcc-2.95.3 Released.
+
+2000-12-10 Bernd Schmidt <bernds@redhat.com>
+
+ 2000-10-16 Jakub Jelinek <jakub@redhat.com>
+ * iostream.cc (ostream::operator<<(double n)) [__GLIBC_MINOR__ >= 2]:
+ Initialize new fields wide and i18n of struct printf_info.
+ (ostream::operator<<(long double n)) [__GLIBC_MINOR__ >= 2]:
+ Likewise.
+
+ 2000-09-23 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+ * stdstreams.cc: Include <libio.h>, not "libio.h".
+ * iolibio.h: Likewise.
+ (_IO_pos_BAD): Use _IO_off_t instead of _IO_fpos_t.
+ * libio.h (_IO_USER_LOCK): Define.
+
+ 1999-12-22 Jakub Jelinek <jakub@redhat.com>
+ * libio.h (_IO_cookie_io_functions_t): Use _IO_off_t instead of
+ _IO_fpos_t.
+ (_IO_seekoff, _IO_seekpos): Likewise. Use _IO_off64_t instead of
+ _IO_fpos64_t.
+ * libioP.h (_IO_seekoff_t, _IO_seekpos_t, _IO_seek_t): Likewise.
+ (_IO_seekoff, _IO_seekpos): Likewise.
+ (_IO_default_seekoff, _IO_default_seekpos): Likewise.
+ (_IO_default_seek): Likewise.
+ (_IO_file_seekoff, _IO_file_seek, _IO_str_seekoff): Likewise.
+ * streambuf.h (streampos): Typedef to _IO_off_t resp. _IO_off64_t.
+ * parsestream.h (class parsebuf::pos_at_line_start): Change type
+ to _IO_off_t.
+
2000-01-28 Martin v. L÷wis <loewis@informatik.hu-berlin.de>
* fstream.h (ifstream::ifstream): Add ios::in to mode.
diff --git a/contrib/libio/iolibio.h b/contrib/libio/iolibio.h
index 083b198b4485..0ebc14f7ac2b 100644
--- a/contrib/libio/iolibio.h
+++ b/contrib/libio/iolibio.h
@@ -1,4 +1,4 @@
-#include "libio.h"
+#include <libio.h>
/* These emulate stdio functionality, but with a different name
(_IO_ungetc instead of ungetc), and using _IO_FILE instead of FILE. */
@@ -38,7 +38,11 @@ extern int _IO_obstack_vprintf __P ((struct obstack *, const char *,
_IO_va_list));
extern int _IO_obstack_printf __P ((struct obstack *, const char *, ...));
#ifndef _IO_pos_BAD
-#define _IO_pos_BAD ((_IO_fpos_t)(-1))
+# if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
+# define _IO_pos_BAD ((_IO_off64_t) -1)
+# else
+# define _IO_pos_BAD ((_IO_off_t) -1)
+# endif
#endif
#define _IO_clearerr(FP) ((FP)->_flags &= ~(_IO_ERR_SEEN|_IO_EOF_SEEN))
#define _IO_fseek(__fp, __offset, __whence) \
diff --git a/contrib/libio/iostream.cc b/contrib/libio/iostream.cc
index 4b75fca764dd..792eaae6b4c4 100644
--- a/contrib/libio/iostream.cc
+++ b/contrib/libio/iostream.cc
@@ -1,5 +1,5 @@
/* This is part of libio/iostream, providing -*- C++ -*- input/output.
- Copyright (C) 1993, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1997, 2000 Free Software Foundation, Inc.
This file is part of the GNU IO Library. This library is free
software; you can redistribute it and/or modify it under the
@@ -687,6 +687,10 @@ ostream& ostream::operator<<(double n)
/* extra: */ 0,
#if __GLIBC_MINOR__ >= 1
/* is_char: */ 0,
+#if __GLIBC_MINOR__ >= 2
+ /* wide: */ 0,
+ /* i18n: */ 0,
+#endif
#endif
#endif
/* pad: */ fill()
@@ -793,6 +797,10 @@ ostream& ostream::operator<<(long double n)
/* extra: */ 0,
#if __GLIBC_MINOR__ >= 1
/* is_char: */ 0,
+#if __GLIBC_MINOR__ >= 2
+ /* wide: */ 0,
+ /* i18n: */ 0,
+#endif
#endif
#endif
/* pad: */ fill()
diff --git a/contrib/libio/libio.h b/contrib/libio/libio.h
index b152874d1f61..c453b77bf30d 100644
--- a/contrib/libio/libio.h
+++ b/contrib/libio/libio.h
@@ -136,6 +136,7 @@
#define _IO_IS_APPENDING 0x1000
#define _IO_IS_FILEBUF 0x2000
#define _IO_BAD_SEEN 0x4000
+#define _IO_USER_LOCK 0x8000
/* These are "formatting flags" matching the iostream fmtflags enum values. */
#define _IO_SKIPWS 01
@@ -277,7 +278,7 @@ typedef struct
{
_IO_ssize_t (*read) __PMT ((struct _IO_FILE *, void *, _IO_ssize_t));
_IO_ssize_t (*write) __PMT ((struct _IO_FILE *, const void *, _IO_ssize_t));
- _IO_fpos_t (*seek) __PMT ((struct _IO_FILE *, _IO_off_t, int));
+ _IO_off_t (*seek) __PMT ((struct _IO_FILE *, _IO_off_t, int));
int (*close) __PMT ((struct _IO_FILE *));
} _IO_cookie_io_functions_t;
@@ -348,11 +349,11 @@ extern _IO_ssize_t _IO_padn __P ((_IO_FILE *, int, _IO_ssize_t));
extern _IO_size_t _IO_sgetn __P ((_IO_FILE *, void *, _IO_size_t));
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
-extern _IO_fpos64_t _IO_seekpos __P ((_IO_FILE *, _IO_fpos64_t, int));
+extern _IO_off64_t _IO_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
+extern _IO_off64_t _IO_seekpos __P ((_IO_FILE *, _IO_off64_t, int));
#else
-extern _IO_fpos_t _IO_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
-extern _IO_fpos_t _IO_seekpos __P ((_IO_FILE *, _IO_fpos_t, int));
+extern _IO_off_t _IO_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
+extern _IO_off_t _IO_seekpos __P ((_IO_FILE *, _IO_off_t, int));
#endif
extern void _IO_free_backup_area __P ((_IO_FILE *));
diff --git a/contrib/libio/libioP.h b/contrib/libio/libioP.h
index 629e4fd8cf65..be70f526bbe6 100644
--- a/contrib/libio/libioP.h
+++ b/contrib/libio/libioP.h
@@ -146,10 +146,10 @@ typedef _IO_size_t (*_IO_xsgetn_t) __PMT ((_IO_FILE *FP, void *DATA,
It matches the streambuf::seekoff virtual function.
It is also used for the ANSI fseek function. */
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-typedef _IO_fpos64_t (*_IO_seekoff_t) __PMT ((_IO_FILE *FP, _IO_off64_t OFF,
+typedef _IO_off64_t (*_IO_seekoff_t) __PMT ((_IO_FILE *FP, _IO_off64_t OFF,
int DIR, int MODE));
#else
-typedef _IO_fpos_t (*_IO_seekoff_t) __PMT ((_IO_FILE *FP, _IO_off_t OFF,
+typedef _IO_off_t (*_IO_seekoff_t) __PMT ((_IO_FILE *FP, _IO_off_t OFF,
int DIR, int MODE));
#endif
#define _IO_SEEKOFF(FP, OFF, DIR, MODE) JUMP3 (__seekoff, FP, OFF, DIR, MODE)
@@ -160,9 +160,9 @@ typedef _IO_fpos_t (*_IO_seekoff_t) __PMT ((_IO_FILE *FP, _IO_off_t OFF,
It is also used for the ANSI fgetpos and fsetpos functions. */
/* The _IO_seek_cur and _IO_seek_end options are not allowed. */
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-typedef _IO_fpos64_t (*_IO_seekpos_t) __PMT ((_IO_FILE *, _IO_fpos64_t, int));
+typedef _IO_off64_t (*_IO_seekpos_t) __PMT ((_IO_FILE *, _IO_off64_t, int));
#else
-typedef _IO_fpos_t (*_IO_seekpos_t) __PMT ((_IO_FILE *, _IO_fpos_t, int));
+typedef _IO_off_t (*_IO_seekpos_t) __PMT ((_IO_FILE *, _IO_off_t, int));
#endif
#define _IO_SEEKPOS(FP, POS, FLAGS) JUMP2 (__seekpos, FP, POS, FLAGS)
@@ -213,9 +213,9 @@ typedef _IO_ssize_t (*_IO_write_t) __PMT ((_IO_FILE *,const void *,_IO_ssize_t))
It matches the streambuf::sys_seek virtual function, which is
specific to this implementation. */
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-typedef _IO_fpos64_t (*_IO_seek_t) __PMT ((_IO_FILE *, _IO_off64_t, int));
+typedef _IO_off64_t (*_IO_seek_t) __PMT ((_IO_FILE *, _IO_off64_t, int));
#else
-typedef _IO_fpos_t (*_IO_seek_t) __PMT ((_IO_FILE *, _IO_off_t, int));
+typedef _IO_off_t (*_IO_seek_t) __PMT ((_IO_FILE *, _IO_off_t, int));
#endif
#define _IO_SYSSEEK(FP, OFFSET, MODE) JUMP2 (__seek, FP, OFFSET, MODE)
@@ -298,11 +298,11 @@ struct _IO_FILE_plus
/* Generic functions */
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
-extern _IO_fpos64_t _IO_seekpos __P ((_IO_FILE *, _IO_fpos64_t, int));
+extern _IO_off64_t _IO_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
+extern _IO_off64_t _IO_seekpos __P ((_IO_FILE *, _IO_off64_t, int));
#else
-extern _IO_fpos_t _IO_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
-extern _IO_fpos_t _IO_seekpos __P ((_IO_FILE *, _IO_fpos_t, int));
+extern _IO_off_t _IO_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
+extern _IO_off_t _IO_seekpos __P ((_IO_FILE *, _IO_off_t, int));
#endif
extern void _IO_switch_to_main_get_area __P ((_IO_FILE *));
@@ -340,22 +340,22 @@ extern _IO_size_t _IO_default_xsputn __P ((_IO_FILE *, const void *,
_IO_size_t));
extern _IO_size_t _IO_default_xsgetn __P ((_IO_FILE *, void *, _IO_size_t));
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_default_seekoff __P ((_IO_FILE *,
+extern _IO_off64_t _IO_default_seekoff __P ((_IO_FILE *,
_IO_off64_t, int, int));
-extern _IO_fpos64_t _IO_default_seekpos __P ((_IO_FILE *,
- _IO_fpos64_t, int));
+extern _IO_off64_t _IO_default_seekpos __P ((_IO_FILE *,
+ _IO_off64_t, int));
#else
-extern _IO_fpos_t _IO_default_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
-extern _IO_fpos_t _IO_default_seekpos __P ((_IO_FILE *, _IO_fpos_t, int));
+extern _IO_off_t _IO_default_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
+extern _IO_off_t _IO_default_seekpos __P ((_IO_FILE *, _IO_off_t, int));
#endif
extern _IO_ssize_t _IO_default_write __P ((_IO_FILE *, const void *,
_IO_ssize_t));
extern _IO_ssize_t _IO_default_read __P ((_IO_FILE *, void *, _IO_ssize_t));
extern int _IO_default_stat __P ((_IO_FILE *, void *));
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_default_seek __P ((_IO_FILE *, _IO_off64_t, int));
+extern _IO_off64_t _IO_default_seek __P ((_IO_FILE *, _IO_off64_t, int));
#else
-extern _IO_fpos_t _IO_default_seek __P ((_IO_FILE *, _IO_off_t, int));
+extern _IO_off_t _IO_default_seek __P ((_IO_FILE *, _IO_off_t, int));
#endif
extern int _IO_default_sync __P ((_IO_FILE *));
#define _IO_default_close ((_IO_close_t) _IO_default_sync)
@@ -389,11 +389,11 @@ extern void _IO_flush_all_linebuffered __P ((void));
extern int _IO_file_doallocate __P ((_IO_FILE *));
extern _IO_FILE* _IO_file_setbuf __P ((_IO_FILE *, char *, _IO_ssize_t));
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_file_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
-extern _IO_fpos64_t _IO_file_seek __P ((_IO_FILE *, _IO_off64_t, int));
+extern _IO_off64_t _IO_file_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
+extern _IO_off64_t _IO_file_seek __P ((_IO_FILE *, _IO_off64_t, int));
#else
-extern _IO_fpos_t _IO_file_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
-extern _IO_fpos_t _IO_file_seek __P ((_IO_FILE *, _IO_off_t, int));
+extern _IO_off_t _IO_file_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
+extern _IO_off_t _IO_file_seek __P ((_IO_FILE *, _IO_off_t, int));
#endif
extern _IO_size_t _IO_file_xsputn __P ((_IO_FILE *, const void *, _IO_size_t));
extern int _IO_file_stat __P ((_IO_FILE *, void *));
@@ -427,9 +427,9 @@ extern int _IO_str_underflow __P ((_IO_FILE *));
extern int _IO_str_overflow __P ((_IO_FILE *, int));
extern int _IO_str_pbackfail __P ((_IO_FILE *, int));
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-extern _IO_fpos64_t _IO_str_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
+extern _IO_off64_t _IO_str_seekoff __P ((_IO_FILE *, _IO_off64_t, int, int));
#else
-extern _IO_fpos_t _IO_str_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
+extern _IO_off_t _IO_str_seekoff __P ((_IO_FILE *, _IO_off_t, int, int));
#endif
extern void _IO_str_finish __P ((_IO_FILE *, int));
@@ -544,12 +544,12 @@ extern int _IO_vscanf __P ((const char *, _IO_va_list));
where an _IO_fpos_t is a struct.
Note that _IO_off_t must be an integral type. */
-/* _IO_pos_BAD is an _IO_fpos_t value indicating error, unknown, or EOF. */
+/* _IO_pos_BAD is an _IO_off_t value indicating error, unknown, or EOF. */
#ifndef _IO_pos_BAD
# if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
-# define _IO_pos_BAD ((_IO_fpos64_t) -1)
+# define _IO_pos_BAD ((_IO_off64_t) -1)
# else
-# define _IO_pos_BAD ((_IO_fpos_t) -1)
+# define _IO_pos_BAD ((_IO_off_t) -1)
# endif
#endif
/* _IO_pos_as_off converts an _IO_fpos_t value to an _IO_off_t value. */
diff --git a/contrib/libio/parsestream.h b/contrib/libio/parsestream.h
index 326ab87a8090..97655bcbf691 100644
--- a/contrib/libio/parsestream.h
+++ b/contrib/libio/parsestream.h
@@ -42,7 +42,7 @@ extern "C++" {
class parsebuf : public streambuf {
protected:
- _IO_fpos_t pos_at_line_start;
+ _IO_off_t pos_at_line_start;
long _line_length;
unsigned long __line_number;
char *buf_start;
diff --git a/contrib/libio/stdio/ChangeLog b/contrib/libio/stdio/ChangeLog
index 86b1b7e1eb4c..8ef9dcc0b3ce 100644
--- a/contrib/libio/stdio/ChangeLog
+++ b/contrib/libio/stdio/ChangeLog
@@ -1,3 +1,7 @@
+Fri Mar 16 12:46:19 GMT 2001 Bernd Schmidt (bernds@redhat.com)
+
+ * gcc-2.95.3 Released.
+
Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com)
* gcc-2.95.2 Released.
diff --git a/contrib/libio/stdstreams.cc b/contrib/libio/stdstreams.cc
index a5889d738e22..7a74eaaa4433 100644
--- a/contrib/libio/stdstreams.cc
+++ b/contrib/libio/stdstreams.cc
@@ -36,7 +36,7 @@ the executable file might be covered by the GNU General Public License. */
// then we don't need to, since in that case stdin/stdout/stderr
// are identical to _IO_stdin/_IO_stdout/_IO_stderr.
-#include "libio.h"
+#include <libio.h>
#ifdef _STDIO_USES_IOSTREAM
#define CIN_SBUF _IO_stdin_
diff --git a/contrib/libio/streambuf.h b/contrib/libio/streambuf.h
index 8785d96c694e..193c4993827f 100644
--- a/contrib/libio/streambuf.h
+++ b/contrib/libio/streambuf.h
@@ -72,10 +72,10 @@ class ostream; class streambuf;
#if defined(_G_IO_IO_FILE_VERSION) && _G_IO_IO_FILE_VERSION == 0x20001
typedef _IO_off64_t streamoff;
-typedef _IO_fpos64_t streampos;
+typedef _IO_off64_t streampos;
#else
typedef _IO_off_t streamoff;
-typedef _IO_fpos_t streampos;
+typedef _IO_off_t streampos;
#endif
typedef _IO_ssize_t streamsize;
diff --git a/contrib/libio/tests/ChangeLog b/contrib/libio/tests/ChangeLog
index 8493c19d2268..548e9e0519aa 100644
--- a/contrib/libio/tests/ChangeLog
+++ b/contrib/libio/tests/ChangeLog
@@ -1,3 +1,7 @@
+Fri Mar 16 12:46:19 GMT 2001 Bernd Schmidt (bernds@redhat.com)
+
+ * gcc-2.95.3 Released.
+
Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com)
* gcc-2.95.2 Released.
diff --git a/contrib/libio/testsuite/ChangeLog b/contrib/libio/testsuite/ChangeLog
index c67090576c27..ead33b2e1b72 100644
--- a/contrib/libio/testsuite/ChangeLog
+++ b/contrib/libio/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+Fri Mar 16 12:46:19 GMT 2001 Bernd Schmidt (bernds@redhat.com)
+
+ * gcc-2.95.3 Released.
+
Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com)
* gcc-2.95.2 Released.