This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Patch for 64-bit HP-UX libstdc++-v3
- From: "Jessica Han" <jessica at cup dot hp dot com>
- To: <gcc-patches at gcc dot gnu dot org>, <libstdc++ at gcc dot gnu dot org>
- Date: Thu, 21 Feb 2002 11:34:43 -0800
- Subject: Patch for 64-bit HP-UX libstdc++-v3
- Reply-to: <jessica at cup dot hp dot com>
Define strtoll to be strtol, and strtoull to be strtoul at 64-bit on hpux.
This fixed unresolved symbols while linking 64-bit objects on hpux,
__strtoll and __strtoull, which are defined in /usr/lib/hpux32/libc.so but
not in /usr/lib/hpux64/libc.so on either IA64 or PA-RISC.
Can someone review this and check it in if it is OK? I don't have write
permission to CVS. Thanks.
----
Jessica Han
Open Source Tools
Hewlett-Packard
(408) 447-6154
2002-02-21 Jessica Han <jessica@cup.hp.com>
* libstdc++-v3/config/os/hpux/bits/os_defines.h: Change declarations
of strtoll and strtoull to strtol and strtoul in HP-UX 64 bit mode.
*** os_defines.h.1.2.2.1 Thu Feb 21 10:31:17 2002
--- os_defines.h Thu Feb 21 10:33:08 2002
***************
*** 60,69 ****
--- 60,76 ----
We also force _GLIBCPP_USE_LONG_LONG here so that we don't have
to bastardize configure to deal with this sillyness. */
namespace std {
+ #ifndef __LP64__
__extension__ extern "C" long long strtoll (const char *, char **, int)
__asm ("__strtoll");
__extension__ extern "C" unsigned long long strtoull (const char *, char
**, int)
__asm ("__strtoull");
+ #else
+ __extension__ extern "C" long long strtoll (const char *, char **, int)
+ __asm ("strtol");
+ __extension__ extern "C" unsigned long long strtoull (const char *, char
**, int)
+ __asm ("strtoul");
+ #endif
}
#define _GLIBCPP_USE_LONG_LONG 1
#endif