On 12 June 2012 14:23, Felix Fietkau <n...@openwrt.org> wrote: > uClibc++ current does not build using an ARM EABI toolchain with the > following build failure: > eh_alloc.cpp > In file included from ../include/basic_definitions:21:0, > from ../include/cstdlib:20, > from eh_alloc.cpp:20: > ../include/system_configuration.h:17:0: warning: "__WARNINGS__" redefined > [enabled by default] > /opt/toolchains/armeabi-uclibc-std-0.9.30.2-gcc-4.6.0-binutils-2.20.1/arm-linux-uclibcgnueabi/sysroot/usr/include/bits/uClibc_config.h:223:0: > note: this is the location of the previous definition > In file included from eh_alloc.cpp:25:0: > ../include/unwind-cxx.h:176:36: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:177:36: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:178:35: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:179:41: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:180:40: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:181:39: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:182:38: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > ../include/unwind-cxx.h:183:37: error: ISO C++ forbids casting to an array > type '_Unwind_Exception_Class' > make[1]: *** [eh_alloc.o] Error 1 > make[1]: Leaving directory `/home/florian/dev/uclibcxx/uClibc++/src' > > Workaround this by direclty using the string "GNUC++". > > Signed-off-by: Felix Fietkau <n...@openwrt.org> > Signed-off-by: Florian Fainelli <flor...@openwrt.org> > --- > include/unwind-cxx.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/include/unwind-cxx.h b/include/unwind-cxx.h > index a5f6440..cd5a58e 100644 > --- a/include/unwind-cxx.h > +++ b/include/unwind-cxx.h > @@ -173,6 +173,7 @@ extern std::unexpected_handler __unexpected_handler; > > // This is the exception class we report -- "GNUCC++\0". > const _Unwind_Exception_Class __gxx_exception_class > +#ifndef __ARM_EABI_UNWINDER__ > = ((((((((_Unwind_Exception_Class) 'G' > << 8 | (_Unwind_Exception_Class) 'N') > << 8 | (_Unwind_Exception_Class) 'U') > @@ -181,6 +182,9 @@ const _Unwind_Exception_Class __gxx_exception_class > << 8 | (_Unwind_Exception_Class) '+') > << 8 | (_Unwind_Exception_Class) '+') > << 8 | (_Unwind_Exception_Class) '\0'); > +#else > += "GNUC++";
IIRC this should be "GNUCC++", no? Seems like nobody needs dependent exceptions? *phew* :) I'll push a fixed version of this.. Thanks for the patch! _______________________________________________ uClibc mailing list uClibc@uclibc.org http://lists.busybox.net/mailman/listinfo/uclibc