This is the mail archive of the
libstdc++-prs@sourceware.cygnus.com
mailing list for the libstdc++ project.
libstdc++/30: SUN 32bit apps using 64bit file offsets
- To: libstdc++-gnats at sourceware dot cygnus dot com
- Subject: libstdc++/30: SUN 32bit apps using 64bit file offsets
- From: michael dot reed at ft dot com
- Date: 31 Jan 2000 15:45:27 -0000
- Reply-To: michael dot reed at ft dot com
- Resent-Cc: libstdc++-prs at sourceware dot cygnus dot com
- Resent-Reply-To: libstdc++-gnats@sourceware.cygnus.com, michael.reed@ft.com
>Number: 30
>Category: libstdc++
>Synopsis: SUN 32bit apps using 64bit file offsets
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Jan 31 07:47:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator: Mike Reed
>Release: with gcc-2.95.2
>Organization:
>Environment:
SunOS gp003dev 5.7 Generic_106541-07 sun4u sparc SUNW,Ultra-Enterprise
>Description:
When compiling a 32 bit app to use 64 bit file offsets (largefiles) one defines _FILE_OFFSET_BITS=64 before including system headers. This causes, I believe, 'open' to be redifined to 'open64' so that one picks up the correct library function. However, if one happens to include streambuf.h from the STL this undefs 'open' and stops this working. This doesn't happen with the Sun compiler since they use some #pragma mechanism instead.
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: