This bug also affect xulrunner build on unstable with gcc-4.3 now
as default:

http://buildd.debian.org/fetch.cgi?pkg=xulrunner;ver=1.8.1.13-1;arch=armel;stamp=1207348728

-snip-
configure:10281: checking for iconv in -lc
configure:10303: c++ -o conftest  -fshort-wchar -pthread   -Wl,--as-needed 
conftest.C -lc  -ldl -lm  1>&5
/usr/bin/ld: ERROR: /tmp/ccAhgliI.o: Conflicting definitions of wchar_t
/usr/bin/ld: failed to merge target specific data of file /tmp/ccAhgliI.o
-snip-

On Sat, Apr 05, 2008 at 10:25:45AM +0200, Mike Hommey wrote:
> On Sat, Apr 05, 2008 at 12:13:45AM +0300, Riku Voipio wrote:
> > $ cat test.c
> > #include <stddef.h>
> > #include <wchar.h>
> > 
> > int main() {
> > ; return 0; }
> > all6500-2:~/icew
> > $ c++ -c -fno-strict-aliasing -fshort-wchar test.c
> > $ echo $?
> > 0
> > $ c++  -fno-strict-aliasing -fshort-wchar test.c
> > /usr/bin/ld: ERROR: /tmp/ccKVwN1s.o: Conflicting definitions of wchar_t
> > /usr/bin/ld: failed to merge target specific data of file
> > /tmp/ccKVwN1s.o
> > collect2: ld returned 1 exit status
> > 
> > A quick test confirms, test.c compiles fine with g++-4.2, but fails with
> > g++-4.3.

> Seems like a candidate for a gcc regression :-/

Not really, gcc has just become more strict.

on arm EABI, wchar_t is "unsigned int", while -fshort-wchar enforces
"short unsigned int". One is creating code that is incompatible with
platform ABI, which the linker refuses to mix.




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to