libstdc++/5611: (Unsigned) long long I/O unsupported on FreeBSD 3.4
Loren James Rittle
rittle@latour.rsch.comm.mot.com
Wed Feb 6 08:30:00 GMT 2002
Hi Doug,
>> Number: 5611
>> Category: libstdc++
>> Synopsis: (Unsigned) long long I/O unsupported on FreeBSD 3.4
> _GLIBCPP_USE_LONG_LONG is left undefined because the system C library
> does not support strtoll and strtoull, and therefore I/O for (unsigned)
> long long values is unsupported by libstdc++.
> Port the string->integer conversion routines from glibc to be used when
> the C library does not support strtoll/strtoull.
> I'd be willing to help if this is deemed the right way to go.
Great! If you want to work on the patch, send a first effort to
libstdc++@gcc.gnu.org .
FYI, this situation is fixed on FreeBSD 4.X. The correct place to fix
this is actually in libiberty. I have never added a routine there so
I can't offer any real guidance other than kibitzing (brief
instructions are in libiberty/README)
BTW, you might note the following (run on a FreeBSD 4.4 system with
full sources installed in /usr/src):
diff -cw gcc-mainline/libiberty/strtoul.c /usr/src/lib/libc/stdlib/strtoul.c
contains mainly stylistic differences thus I would adapt these files
in a similar manner (available from WWW CVS from freebsd.org, if you
have no better way to snag them):
/usr/src/lib/libc/stdlib/strtoll.c
/usr/src/lib/libc/stdlib/strtoull.c
Regards,
Loren
More information about the Libstdc++
mailing list