This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libstdc++/5611: (Unsigned) long long I/O unsupported on FreeBSD 3.4


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]