This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [v3] c++0x <system_error> CD updates
- From: Paolo Carlini <paolo dot carlini at oracle dot com>
- To: DJ Delorie <dj at redhat dot com>
- Cc: cfairles at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Date: Thu, 23 Oct 2008 16:07:34 +0200
- Subject: Re: [v3] c++0x <system_error> CD updates
- References: <200810231333.m9NDXfYJ023425@greed.delorie.com>
Hi,
> This line in error_constants.h doesn't work with 16 bit targets:
>
> no_posix_equivalent = 1L << 16
>
> In file included from /sata/dj/gnu/gcc/m32c-elf/m32c-elf/libstdc++-v3/include/system_error:44,
> from /sata/dj/gnu/gcc/gcc/libstdc++-v3/src/functexcept.cc:32:
> /sata/dj/gnu/gcc/m32c-elf/m32c-elf/libstdc++-v3/include/m32c-elf/bits/error_constants.h:176: error: enumerator value 65536l is too large for underlying type 'int'
> make[4]: *** [functexcept.lo] Error 1
> make[4]: Leaving directory `/sata/dj/gnu/gcc/m32c-elf/m32c-elf/libstdc++-v3/src'
I see your point, on the other hand seems to me a bit "unfair" pointing
out that in a message following up to Chris' patch, which didn't touch
that line. Also, we already have something very similar in, eg,
ios_base.h, and nobdy complained to date, it's *very* old (and critical)
code. If at this point those 16-bit issues can be fixed without
affecting the ABI, let's do something consistent across the library.
Paolo.