Index: Makefile.def =================================================================== RCS file: /cvsroot/gcc/gcc/Makefile.def,v retrieving revision 1.50 diff -u -r1.50 Makefile.def --- Makefile.def 30 Mar 2005 08:17:44 -0000 1.50 +++ Makefile.def 17 May 2005 09:57:44 -0000 @@ -211,7 +211,7 @@ // Target tools flags_to_pass = { flag= AR_FOR_TARGET ; }; -flags_to_pass = { flag= AS_FOR_TARGET ; }; +flags_to_pass = { flag= GAS_FOR_TARGET ; }; flags_to_pass = { flag= CC_FOR_TARGET ; }; flags_to_pass = { flag= CFLAGS_FOR_TARGET ; }; flags_to_pass = { flag= CPPFLAGS_FOR_TARGET ; }; Index: Makefile.in =================================================================== RCS file: /cvsroot/gcc/gcc/Makefile.in,v retrieving revision 1.263 diff -u -r1.263 Makefile.in --- Makefile.in 4 May 2005 15:41:48 -0000 1.263 +++ Makefile.in 17 May 2005 09:58:02 -0000 @@ -109,7 +109,7 @@ BUILD_EXPORTS = \ $(BASE_EXPORTS) \ AR="$(AR_FOR_BUILD)"; export AR; \ - AS="$(AS_FOR_BUILD)"; export AS; \ + AS="$(GAS_FOR_BUILD)"; export AS; \ CC="$(CC_FOR_BUILD)"; export CC; \ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ @@ -181,7 +181,7 @@ BASE_TARGET_EXPORTS = \ $(BASE_EXPORTS) \ AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ + AS="$(GAS_FOR_TARGET)"; export AS; \ CC="$(CC_FOR_TARGET)"; export CC; \ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ @@ -346,9 +346,9 @@ fi; \ fi` -AS_FOR_TARGET=@AS_FOR_TARGET@ -CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@ -USUAL_AS_FOR_TARGET = ` \ +GAS_FOR_TARGET=@GAS_FOR_TARGET@ +CONFIGURED_GAS_FOR_TARGET=@CONFIGURED_GAS_FOR_TARGET@ +USUAL_GAS_FOR_TARGET = ` \ if [ -f $$r/$(HOST_SUBDIR)/gas/as-new ] ; then \ echo $$r/$(HOST_SUBDIR)/gas/as-new ; \ elif [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ]; then \ @@ -357,7 +357,7 @@ if [ '$(host)' = '$(target)' ] ; then \ echo $(AS); \ else \ - echo $(CONFIGURED_AS_FOR_TARGET) ; \ + echo $(CONFIGURED_GAS_FOR_TARGET) ; \ fi; \ fi` @@ -559,7 +559,7 @@ "LIBCFLAGS=$(LIBCFLAGS)" \ "LIBCXXFLAGS=$(LIBCXXFLAGS)" \ "AR_FOR_TARGET=$(AR_FOR_TARGET)" \ - "AS_FOR_TARGET=$(AS_FOR_TARGET)" \ + "GAS_FOR_TARGET=$(GAS_FOR_TARGET)" \ "CC_FOR_TARGET=$(CC_FOR_TARGET)" \ "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ "CPPFLAGS_FOR_TARGET=$(CPPFLAGS_FOR_TARGET)" \ @@ -620,7 +620,7 @@ # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them. EXTRA_TARGET_FLAGS = \ 'AR=$$(AR_FOR_TARGET)' \ - 'AS=$$(AS_FOR_TARGET)' \ + 'AS=$$(GAS_FOR_TARGET)' \ 'CC=$$(CC_FOR_TARGET)' \ 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \ 'CXX=$$(CXX_FOR_TARGET)' \ Index: Makefile.tpl =================================================================== RCS file: /cvsroot/gcc/gcc/Makefile.tpl,v retrieving revision 1.131 diff -u -r1.131 Makefile.tpl --- Makefile.tpl 4 May 2005 15:41:55 -0000 1.131 +++ Makefile.tpl 17 May 2005 09:58:02 -0000 @@ -112,7 +112,7 @@ BUILD_EXPORTS = \ $(BASE_EXPORTS) \ AR="$(AR_FOR_BUILD)"; export AR; \ - AS="$(AS_FOR_BUILD)"; export AS; \ + AS="$(GAS_FOR_BUILD)"; export AS; \ CC="$(CC_FOR_BUILD)"; export CC; \ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ @@ -184,7 +184,7 @@ BASE_TARGET_EXPORTS = \ $(BASE_EXPORTS) \ AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ + AS="$(GAS_FOR_TARGET)"; export AS; \ CC="$(CC_FOR_TARGET)"; export CC; \ CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ @@ -349,9 +349,9 @@ fi; \ fi` -AS_FOR_TARGET=@AS_FOR_TARGET@ -CONFIGURED_AS_FOR_TARGET=@CONFIGURED_AS_FOR_TARGET@ -USUAL_AS_FOR_TARGET = ` \ +GAS_FOR_TARGET=@GAS_FOR_TARGET@ +CONFIGURED_GAS_FOR_TARGET=@CONFIGURED_GAS_FOR_TARGET@ +USUAL_GAS_FOR_TARGET = ` \ if [ -f $$r/$(HOST_SUBDIR)/gas/as-new ] ; then \ echo $$r/$(HOST_SUBDIR)/gas/as-new ; \ elif [ -f $$r/$(HOST_SUBDIR)/gcc/xgcc ]; then \ @@ -360,7 +360,7 @@ if [ '$(host)' = '$(target)' ] ; then \ echo $(AS); \ else \ - echo $(CONFIGURED_AS_FOR_TARGET) ; \ + echo $(CONFIGURED_GAS_FOR_TARGET) ; \ fi; \ fi` @@ -561,7 +561,7 @@ # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them. EXTRA_TARGET_FLAGS = \ 'AR=$$(AR_FOR_TARGET)' \ - 'AS=$$(AS_FOR_TARGET)' \ + 'AS=$$(GAS_FOR_TARGET)' \ 'CC=$$(CC_FOR_TARGET)' \ 'CFLAGS=$$(CFLAGS_FOR_TARGET)' \ 'CXX=$$(CXX_FOR_TARGET)' \ Index: configure.in =================================================================== RCS file: /cvsroot/gcc/gcc/configure.in,v retrieving revision 1.349 diff -u -r1.349 configure.in --- configure.in 5 May 2005 00:59:21 -0000 1.349 +++ configure.in 17 May 2005 09:58:08 -0000 @@ -434,7 +434,7 @@ noconfigdirs="$noconfigdirs tcl tk itcl libgui sim" noconfigdirs="$noconfigdirs expect dejagnu" # the C++ libraries don't build on top of CE's C libraries - noconfigdirs="$noconfigdirs target-libstdc++-v3" + #noconfigdirs="$noconfigdirs target-libstdc++-v3" noconfigdirs="$noconfigdirs target-newlib" case "${host}" in *-*-cygwin*) ;; # keep gdb and readline @@ -2141,7 +2141,7 @@ # Target tools. NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AR_FOR_TARGET, ar) -NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_AS_FOR_TARGET, as) +NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_GAS_FOR_TARGET, as) NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_DLLTOOL_FOR_TARGET, dlltool) NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_LD_FOR_TARGET, ld) NCN_STRICT_CHECK_TARGET_TOOL(CONFIGURED_NM_FOR_TARGET, nm) @@ -2167,7 +2167,7 @@ # tools are built into a structure paralleling where they're installed, # should also eliminate all of this cleanly. AR_FOR_TARGET="\$(USUAL_AR_FOR_TARGET)" - AS_FOR_TARGET="\$(USUAL_AS_FOR_TARGET)" + GAS_FOR_TARGET="\$(USUAL_GAS_FOR_TARGET)" DLLTOOL_FOR_TARGET="\$(USUAL_DLLTOOL_FOR_TARGET)" LD_FOR_TARGET="\$(USUAL_LD_FOR_TARGET)" NM_FOR_TARGET="\$(USUAL_NM_FOR_TARGET)" @@ -2176,7 +2176,7 @@ else # Just use the ones we found. AR_FOR_TARGET="\$(CONFIGURED_AR_FOR_TARGET)" - AS_FOR_TARGET="\$(CONFIGURED_AS_FOR_TARGET)" + GAS_FOR_TARGET="\$(CONFIGURED_GAS_FOR_TARGET)" DLLTOOL_FOR_TARGET="\$(CONFIGURED_DLLTOOL_FOR_TARGET)" LD_FOR_TARGET="\$(CONFIGURED_LD_FOR_TARGET)" NM_FOR_TARGET="\$(CONFIGURED_NM_FOR_TARGET)" @@ -2184,7 +2184,7 @@ WINDRES_FOR_TARGET="\$(CONFIGURED_WINDRES_FOR_TARGET)" fi AC_SUBST(AR_FOR_TARGET) -AC_SUBST(AS_FOR_TARGET) +AC_SUBST(GAS_FOR_TARGET) AC_SUBST(DLLTOOL_FOR_TARGET) AC_SUBST(LD_FOR_TARGET) AC_SUBST(NM_FOR_TARGET) Index: gcc/unwind-pe.h =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/unwind-pe.h,v retrieving revision 1.18 diff -u -r1.18 unwind-pe.h --- gcc/unwind-pe.h 21 Jan 2004 20:40:04 -0000 1.18 +++ gcc/unwind-pe.h 17 May 2005 09:58:28 -0000 @@ -35,11 +35,15 @@ #define GCC_UNWIND_PE_H /* If using C++, references to abort have to be qualified with std::. */ +#ifdef UNDER_CE +#define __gxx_abort() while(0) +#else #if __cplusplus #define __gxx_abort std::abort #else #define __gxx_abort abort #endif +#endif /* Pointer encodings, from dwarf2.h. */ #define DW_EH_PE_absptr 0x00 Index: gcc/unwind.inc =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/unwind.inc,v retrieving revision 1.10 diff -u -r1.10 unwind.inc --- gcc/unwind.inc 19 Aug 2003 20:53:24 -0000 1.10 +++ gcc/unwind.inc 17 May 2005 09:58:28 -0000 @@ -38,6 +38,10 @@ the first such frame here. Cleanup code will call back into _Unwind_Resume and we'll continue Phase 2 there. */ +#ifdef UNDER_CE +#define abort() while(0) +#endif + static _Unwind_Reason_Code _Unwind_RaiseException_Phase2(struct _Unwind_Exception *exc, struct _Unwind_Context *context) Index: gcc/config/arm/pe.h =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/config/arm/pe.h,v retrieving revision 1.32 diff -u -r1.32 pe.h --- gcc/config/arm/pe.h 9 May 2005 16:26:23 -0000 1.32 +++ gcc/config/arm/pe.h 17 May 2005 09:58:30 -0000 @@ -57,11 +57,13 @@ #undef WCHAR_TYPE_SIZE #define WCHAR_TYPE_SIZE 16 +#if 0 /* r11 is fixed. */ #undef SUBTARGET_CONDITIONAL_REGISTER_USAGE #define SUBTARGET_CONDITIONAL_REGISTER_USAGE \ fixed_regs [11] = 1; \ call_used_regs [11] = 1; +#endif /* PE/COFF uses explicit import from shared libraries. */ Index: gcc/config/arm/t-wince-pe =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/config/arm/t-wince-pe,v retrieving revision 1.2 diff -u -r1.2 t-wince-pe --- gcc/config/arm/t-wince-pe 15 May 2004 12:41:35 -0000 1.2 +++ gcc/config/arm/t-wince-pe 17 May 2005 09:58:30 -0000 @@ -1,5 +1,21 @@ LIB1ASMSRC = arm/lib1funcs.asm -LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _call_via_rX _interwork_call_via_rX + +LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ + _call_via_rX _interwork_call_via_rX \ + _lshrdi3 _ashrdi3 _ashldi3 \ + _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ + _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ + _fixsfsi _fixunssfsi _floatdidf _floatdisf + +#LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ +# _call_via_rX _interwork_call_via_rX \ +# _lshrdi3 _ashrdi3 _ashldi3 \ +# _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ +# _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ +# _fixsfsi _fixunssfsi _floatdidf _floatdisf \ +# _divdi3 _udivmoddi4 _udivdi3 _umoddi3 _moddi3 _muldi3 _negdi2 \ +# _cmpdi2 _fixdfdi _fixsfdi _fixunsdfdi _fixunssfdi + # We want fine grained libraries, so use the new code to build the # floating point emulation libraries. @@ -24,8 +40,9 @@ $(RTL_H) output.h flags.h $(TREE_H) expr.h toplev.h $(TM_P_H) $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(srcdir)/config/arm/pe.c -MULTILIB_OPTIONS = mhard-float -MULTILIB_DIRNAMES = fpu +MULTILIB_OPTIONS = mfpu=vfp +#MULTILIB_DIRNAMES = fpu +#MULTILIB_EXTRA_OPTS = mfpu=vfp # Note - Thumb multilib omitted because Thumb support for # arm-wince-pe target does not appear to be working in binutils # yet... Index: gcc/config/arm/wince-pe.h =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/config/arm/wince-pe.h,v retrieving revision 1.5 diff -u -r1.5 wince-pe.h --- gcc/config/arm/wince-pe.h 9 May 2005 16:26:24 -0000 1.5 +++ gcc/config/arm/wince-pe.h 17 May 2005 09:58:30 -0000 @@ -22,6 +22,58 @@ #undef TARGET_DEFAULT #define TARGET_DEFAULT (MASK_NOP_FUN_DLLIMPORT) +#undef USER_LABEL_PREFIX +#define USER_LABEL_PREFIX "" + #undef MULTILIB_DEFAULTS #define MULTILIB_DEFAULTS \ - { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork" } + { "marm", "mlittle-endian", "msoft-float", "mfpu=vfp", "mno-thumb-interwork" } +#undef FPUTYPE_DEFAULT +#define FPUTYPE_DEFAULT FPUTYPE_VFP + +#undef ASM_SPEC +#define ASM_SPEC "\ +%{mbig-endian:-EB} \ +%{mlittle-endian:-EL} \ +%{mcpu=xscale:-mcpu=iwmmxt; mcpu=*:-mcpu=%*} \ +%{march=*:-march=%*} \ +%{mapcs-*:-mapcs-%*} \ +%(subtarget_asm_float_spec) \ +%{mthumb-interwork:-mthumb-interwork} \ +%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \ +%{mfloat-abi=*} %{mfpu=*} \ +%(subtarget_extra_asm_spec)" + +#undef SUBTARGET_EXTRA_SPECS +#define SUBTARGET_EXTRA_SPECS \ + { "subtarget_asm_float_spec", SUBTARGET_ASM_FLOAT_SPEC }, + +#undef SUBTARGET_ASM_FLOAT_SPEC +#define SUBTARGET_ASM_FLOAT_SPEC "\ +%{!mfpu=*:-mfpu=vfp}" + +#define TARGET_OS_CPP_BUILTINS() \ + do \ + { \ + builtin_define ("_M_ARM=1"); \ + builtin_define ("ARM=1"); \ + builtin_define ("__MINGWCE__"); \ + builtin_define ("__MINGW32__"); \ + builtin_define ("_WIN32"); \ + builtin_define ("_UNICODE"); \ + builtin_define_std ("WIN32"); \ + builtin_define_std ("UNDER_CE"); \ + builtin_define_std ("UNICODE"); \ + } \ + while (0) + +/* Include in the mingw32 libraries with libgcc */ +#undef LINK_SPEC +#define LINK_SPEC "%{shared: %{mdll: %eshared and mdll are not compatible}} \ + %{shared: --shared} %{mdll:--dll} \ + %{shared|mdll: -e _DllMainCRTStartup}" + +// %{static:-Bstatic} %{!static:-Bdynamic} + +#undef SUBTARGET_CPP_SPEC +#define SUBTARGET_CPP_SPEC "-D__pe__ -Dmain=main2" Index: libiberty/cp-demangle.c =================================================================== RCS file: /cvsroot/gcc/gcc/libiberty/cp-demangle.c,v retrieving revision 1.80 diff -u -r1.80 cp-demangle.c --- libiberty/cp-demangle.c 10 May 2005 15:33:14 -0000 1.80 +++ libiberty/cp-demangle.c 17 May 2005 09:58:42 -0000 @@ -3209,30 +3209,6 @@ d_print_error (dpi); return; - case DEMANGLE_COMPONENT_TRINARY: - if (d_right (dc)->type != DEMANGLE_COMPONENT_TRINARY_ARG1 - || d_right (d_right (dc))->type != DEMANGLE_COMPONENT_TRINARY_ARG2) - { - d_print_error (dpi); - return; - } - d_append_char (dpi, '('); - d_print_comp (dpi, d_left (d_right (dc))); - d_append_string_constant (dpi, ") "); - d_print_expr_op (dpi, d_left (dc)); - d_append_string_constant (dpi, " ("); - d_print_comp (dpi, d_left (d_right (d_right (dc)))); - d_append_string_constant (dpi, ") : ("); - d_print_comp (dpi, d_right (d_right (d_right (dc)))); - d_append_char (dpi, ')'); - return; - - case DEMANGLE_COMPONENT_TRINARY_ARG1: - case DEMANGLE_COMPONENT_TRINARY_ARG2: - /* We should only see these are part of DEMANGLE_COMPONENT_TRINARY. */ - d_print_error (dpi); - return; - case DEMANGLE_COMPONENT_LITERAL: case DEMANGLE_COMPONENT_LITERAL_NEG: { Index: libstdc++-v3/crossconfig.m4 =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/crossconfig.m4,v retrieving revision 1.21 diff -u -r1.21 crossconfig.m4 --- libstdc++-v3/crossconfig.m4 6 Apr 2005 00:05:45 -0000 1.21 +++ libstdc++-v3/crossconfig.m4 17 May 2005 09:59:12 -0000 @@ -240,6 +240,12 @@ GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT GLIBCXX_CHECK_ICONV_SUPPORT ;; + *arm-wince-pe) + AC_CHECK_HEADERS([sys/types.h locale.h float.h]) + GLIBCXX_CHECK_LINKER_FEATURES + GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT + GLIBCXX_CHECK_WCHAR_T_SUPPORT + ;; *-netbsd*) AC_CHECK_HEADERS([nan.h ieeefp.h endian.h sys/isa_defs.h \ machine/endian.h machine/param.h sys/machine.h sys/types.h \ Index: libstdc++-v3/include/c_compatibility/string.h =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/include/c_compatibility/string.h,v retrieving revision 1.3 diff -u -r1.3 string.h --- libstdc++-v3/include/c_compatibility/string.h 9 Dec 2003 03:51:45 -0000 1.3 +++ libstdc++-v3/include/c_compatibility/string.h 17 May 2005 09:59:12 -0000 @@ -52,7 +52,9 @@ using std::strstr; using std::strtok; using std::memset; +#ifndef UNDER_CE using std::strerror; +#endif using std::strlen; #endif Index: libstdc++-v3/include/c_std/std_cstdlib.h =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/include/c_std/std_cstdlib.h,v retrieving revision 1.10 diff -u -r1.10 std_cstdlib.h --- libstdc++-v3/include/c_std/std_cstdlib.h 2 Aug 2004 20:28:21 -0000 1.10 +++ libstdc++-v3/include/c_std/std_cstdlib.h 17 May 2005 09:59:12 -0000 @@ -87,13 +87,19 @@ #undef wcstombs #undef wctomb +#ifdef UNDER_CE +#define abort() while(0) +#endif + namespace std { #if _GLIBCXX_HOSTED using ::div_t; using ::ldiv_t; +#ifndef UNDER_CE using ::abort; +#endif using ::abs; using ::atexit; using ::atof; @@ -136,7 +142,9 @@ implementation. */ #define EXIT_SUCCESS 0 #define EXIT_FAILURE 1 +#ifndef UNDER_CE extern "C" void abort(void); +#endif extern "C" int atexit(void (*)()); extern "C" void exit(int); #endif Index: libstdc++-v3/include/c_std/std_cstring.h =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/include/c_std/std_cstring.h,v retrieving revision 1.7 diff -u -r1.7 std_cstring.h --- libstdc++-v3/include/c_std/std_cstring.h 9 Dec 2003 03:44:35 -0000 1.7 +++ libstdc++-v3/include/c_std/std_cstring.h 17 May 2005 09:59:12 -0000 @@ -91,7 +91,9 @@ using ::strspn; using ::strtok; using ::memset; +#ifndef UNDER_CE using ::strerror; +#endif using ::strlen; using ::memchr; Index: libstdc++-v3/libsupc++/eh_terminate.cc =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/libsupc++/eh_terminate.cc,v retrieving revision 1.4 diff -u -r1.4 eh_terminate.cc --- libstdc++-v3/libsupc++/eh_terminate.cc 24 May 2003 16:22:03 -0000 1.4 +++ libstdc++-v3/libsupc++/eh_terminate.cc 17 May 2005 09:59:13 -0000 @@ -41,9 +41,13 @@ { try { handler (); +#ifndef UNDER_CE std::abort (); +#endif } catch (...) { +#ifndef UNDER_CE std::abort (); +#endif } } Index: libstdc++-v3/libsupc++/pure.cc =================================================================== RCS file: /cvsroot/gcc/gcc/libstdc++-v3/libsupc++/pure.cc,v retrieving revision 1.13 diff -u -r1.13 pure.cc --- libstdc++-v3/libsupc++/pure.cc 3 Aug 2004 06:45:54 -0000 1.13 +++ libstdc++-v3/libsupc++/pure.cc 17 May 2005 09:59:13 -0000 @@ -51,6 +51,8 @@ extern "C" void __cxxabiv1::__cxa_pure_virtual (void) { +#ifndef UNDER_CE writestr ("pure virtual method called\n"); +#endif std::terminate (); }