diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-24 01:45:29 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-12-24 01:45:29 +0000 |
commit | 049fd827f06d7e4136d21835197e08b7731deb6c (patch) | |
tree | 24d16ceb1abf477028e86e1ed86aa5c729a79b09 /libstdc++-v3/config | |
parent | a359431fb8dad9925af4f9f0517eebd0baacf118 (diff) |
* config/os/hpux/bits/os_defines.h: Do not include <_sys/inttypes.h>.
Twiddle return types for strtoll and strtoull to avoid using
intmax_t and uintmax-t.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48293 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/config')
-rw-r--r-- | libstdc++-v3/config/os/hpux/bits/os_defines.h | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/libstdc++-v3/config/os/hpux/bits/os_defines.h b/libstdc++-v3/config/os/hpux/bits/os_defines.h index 322bb568567..29b32ea9c99 100644 --- a/libstdc++-v3/config/os/hpux/bits/os_defines.h +++ b/libstdc++-v3/config/os/hpux/bits/os_defines.h @@ -51,23 +51,23 @@ <inttypes.h>. Ugh. <inttypes.h> defines a variety of things, some of which we - probably do not want. So we just provide prototypes for - the functions we care about here. + probably do not want. So we don't want to include it here. - However, to do that, we must include <sys/_inttypes.h> to get - intmax_t and uintmax_t. Luckily <sys/_inttypes.h> looks a - lot cleaner as far as namespace pollution is concerned. + Luckily we can just declare strtoll and strtoull with the + __asm extension which effectively renames calls at the + source level without namespace pollution. + + Also note that the compiler defines _INCLUDE_LONGLONG for C++ + unconditionally, which makes intmax_t and uintmax_t long long + types. We also force _GLIBCPP_USE_LONG_LONG here so that we don't have to bastardize configure to deal with this sillyness. */ -#include <sys/_inttypes.h> namespace std { extern "C" long long strtoll (const char *, char **, int) __asm ("__strtoll"); - extern "C" long long strtoull (const char *, char **, int) + extern "C" unsigned long long strtoull (const char *, char **, int) __asm ("__strtoull"); } -extern intmax_t __strtoll (const char *, char**, int); -extern uintmax_t __strtoull (const char *, char**, int); #define _GLIBCPP_USE_LONG_LONG 1 #endif |