|
Boost-Commit : |
From: technews_at_[hidden]
Date: 2008-01-12 15:17:59
Author: turkanis
Date: 2008-01-12 15:17:58 EST (Sat, 12 Jan 2008)
New Revision: 42705
URL: http://svn.boost.org/trac/boost/changeset/42705
Log:
corrected use of feature detection macros for AIX; simplified implementation slightly; updated docs
Text files modified:
branches/iostreams_dev/boost/iostreams/detail/config/rtl.hpp | 25 +++++++++++++------------
1 files changed, 13 insertions(+), 12 deletions(-)
Modified: branches/iostreams_dev/boost/iostreams/detail/config/rtl.hpp
==============================================================================
--- branches/iostreams_dev/boost/iostreams/detail/config/rtl.hpp (original)
+++ branches/iostreams_dev/boost/iostreams/detail/config/rtl.hpp 2008-01-12 15:17:58 EST (Sat, 12 Jan 2008)
@@ -22,22 +22,20 @@
#include <boost/iostreams/detail/config/windows_posix.hpp>
// Handle open, close, read, and write
-#if defined(__BORLANDC__)
+#ifdef __BORLANDC__
# define BOOST_IOSTREAMS_RTL(x) BOOST_JOIN(_rtl_, x)
+#elif defined BOOST_IOSTREAMS_WINDOWS
+# define BOOST_IOSTREAMS_RTL(x) BOOST_JOIN(_, x)
#else
-# if defined(BOOST_IOSTREAMS_WINDOWS) && !defined(__CYGWIN__)
-# define BOOST_IOSTREAMS_RTL(x) BOOST_JOIN(_, x)
-# else
-# define BOOST_IOSTREAMS_RTL(x) ::x
-# endif
+# define BOOST_IOSTREAMS_RTL(x) ::x // Distinguish from member function named x
#endif
#define BOOST_IOSTREAMS_FD_OPEN BOOST_IOSTREAMS_RTL(open)
#define BOOST_IOSTREAMS_FD_CLOSE BOOST_IOSTREAMS_RTL(close)
#define BOOST_IOSTREAMS_FD_READ BOOST_IOSTREAMS_RTL(read)
#define BOOST_IOSTREAMS_FD_WRITE BOOST_IOSTREAMS_RTL(write)
-// Handle lseek, ftruncate, stat, and off_t
-#if defined(BOOST_IOSTREAMS_WINDOWS) && !defined(__CYGWIN__)
+// Handle lseek, off_t, ftruncate, and stat
+#ifdef BOOST_IOSTREAMS_WINDOWS
# if defined(BOOST_MSVC) || defined(__MSVCRT__) // MSVC, MinGW
# define BOOST_IOSTREAMS_FD_SEEK _lseeki64
# define BOOST_IOSTREAMS_FD_OFFSET __int64
@@ -48,14 +46,17 @@
#else // Non-windows
# if defined(_LARGEFILE64_SOURCE) && \
(!defined(_FILE_OFFSET_BITS) || _FILE_OFFSET_BITS != 64) || \
- defined(__IBMCPP__) && !defined(__64BIT__) && !defined(_LARGE_FILE) || \
- defined(BOOST_IOSTREAMS_HAS_LSEEK64)
+ defined(__IBMCPP__) && !defined(_LARGE_FILES) || \
+ defined(BOOST_IOSTREAMS_HAS_LARGE_FILE_EXTENSIONS)
/**/
-# define BOOST_IOSTREAMS_FD_SEEK lseek64 // Some GCC and IBM
+
+ /* Systems with transitional extensions for large file support */
+
+# define BOOST_IOSTREAMS_FD_SEEK lseek64
# define BOOST_IOSTREAMS_FD_TRUNCATE ftruncate64
# define BOOST_IOSTREAMS_FD_STAT stat64
# define BOOST_IOSTREAMS_FD_OFFSET off64_t
-# else // Cygwin, Darwin, ...
+# else
# define BOOST_IOSTREAMS_FD_SEEK lseek
# define BOOST_IOSTREAMS_FD_TRUNCATE ftruncate
# define BOOST_IOSTREAMS_FD_STAT stat
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk