Bug 51177 - [4.7 Regression] bootstrap failure with inlined isXXX functions
Summary: [4.7 Regression] bootstrap failure with inlined isXXX functions
Status: RESOLVED DUPLICATE of bug 50888
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: 4.7.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-16 16:55 UTC by H.J. Lu
Modified: 2011-11-16 20:48 UTC (History)
0 users

See Also:
Host: i686-pc-linux-gnu
Target: i686-pc-linux-gnu
Build: i686-pc-linux-gnu
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description H.J. Lu 2011-11-16 16:55:55 UTC
On Linux/ia32, revision 181400 gave

libtool: link: /export/gnu/import/svn/gcc-test-ia32/bld/./gcc/gcj -B/export/gnu/import/svn/gcc-test-ia32/bld/i686-linux/libjava/ -B/export/gnu/import/svn/gcc-test-ia32/bld/./gcc/ -B/usr/local/i686-linux/bin/ -B/usr/local/i686-linux/lib/ -isystem /usr/local/i686-linux/include -isystem /usr/local/i686-linux/sys-include -ffloat-store -fomit-frame-pointer -Usun -g -O2 -o .libs/gij -shared-libgcc  -L/export/gnu/import/svn/gcc-test-ia32/bld/i686-linux/libjava/.libs -L/export/gnu/import/svn/gcc-test-ia32/bld/i686-linux/libjava ./.libs/libgij.so /export/gnu/import/svn/gcc-test-ia32/bld/i686-linux/libjava/.libs/libgcj.so -lpthread -lrt -ldl -lz -Wl,-rpath -Wl,/usr/local/lib -Wl,-rpath -Wl,/usr/local/lib/gcj-4.7.0-13
./.libs/libgcj.so: undefined reference to `__cxa_call_unexpected'
collect2: error: ld returned 1 exit status
make[6]: *** [jv-convert] Error 1
make[6]: *** Waiting for unfinished jobs....
./.libs/libgcj.so: undefined reference to `__cxa_call_unexpected'
collect2: error: ld returned 1 exit status
make[6]: *** [gcj-dbtool] Error 1
/export/gnu/import/svn/gcc-test-ia32/bld/i686-linux/libjava/.libs/libgcj.so: undefined reference to `__cxa_call_unexpected'
collect2: error: ld returned 1 exit status
make[6]: *** [gij] Error 1
Comment 1 H.J. Lu 2011-11-16 20:45:17 UTC
The newer glibc includes inlined isXXX functions when compiling C++ code:

extern __const unsigned short int **__ctype_b_loc (void)
     throw () __attribute__ ((__const));
extern int isspace (int) throw (); 
extern __inline __attribute__ ((__gnu_inline__)) int isspace (int __c) throw () { return (*__ctype_b_loc ())[(int) (__c)] & (unsigned short int) _ISspace; }
}

libjava/prims.cc uses isspace which leads to __cxa_call_unexpected.
Comment 2 Andrew Pinski 2011-11-16 20:48:34 UTC
Dup of bug 50888.

*** This bug has been marked as a duplicate of bug 50888 ***