aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-02-05 20:11:32 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-02-05 20:11:32 +0000
commitd232925f0b6d1b5a2c9a122260ae78b51bd60ab0 (patch)
tree53ba7acdeb3e1ec1cb70b5643327157477d4a6bf
parentfca00ffb4906ca75f781985572ca63fc222126c8 (diff)
downloadgcc-d232925f0b6d1b5a2c9a122260ae78b51bd60ab0.zip
gcc-d232925f0b6d1b5a2c9a122260ae78b51bd60ab0.tar.gz
gcc-d232925f0b6d1b5a2c9a122260ae78b51bd60ab0.tar.bz2
os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): Define.
* config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): Define. * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use it to decide whether FIONREAD should take an off_t or int argument. From-SVN: r77336
-rw-r--r--libstdc++-v3/ChangeLog7
-rw-r--r--libstdc++-v3/config/io/basic_file_stdio.cc4
-rw-r--r--libstdc++-v3/config/os/irix/irix6.5/os_defines.h3
3 files changed, 14 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index e647afe..6d5ecf1 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2004-02-05 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
+ Define.
+ * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
+ it to decide whether FIONREAD should take an off_t or int argument.
+
2004-02-05 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_function.h: Minor formatting changes.
diff --git a/libstdc++-v3/config/io/basic_file_stdio.cc b/libstdc++-v3/config/io/basic_file_stdio.cc
index b1d55d0..8cba0db 100644
--- a/libstdc++-v3/config/io/basic_file_stdio.cc
+++ b/libstdc++-v3/config/io/basic_file_stdio.cc
@@ -267,7 +267,11 @@ namespace std
{
#ifdef FIONREAD
// Pipes and sockets.
+#ifdef _GLIBCXX_FIONREAD_TAKES_OFF_T
+ off_t __num = 0;
+#else
int __num = 0;
+#endif
int __r = ioctl(this->fd(), FIONREAD, &__num);
if (!__r && __num >= 0)
return __num;
diff --git a/libstdc++-v3/config/os/irix/irix6.5/os_defines.h b/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
index 41ce7ed..6b0174b 100644
--- a/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
+++ b/libstdc++-v3/config/os/irix/irix6.5/os_defines.h
@@ -51,5 +51,8 @@
// GCC does not use thunks on IRIX.
#define _G_USING_THUNKS 0
+// FINOREAD takes an "off_t *" as argument.
+#define _GLIBCXX_FIONREAD_TAKES_OFF_T
+
#endif