diff options
-rw-r--r-- | gnu/egcs/gcc/Makefile.in | 7 | ||||
-rw-r--r-- | gnu/egcs/gcc/config/m68k/m68k.c | 10 | ||||
-rw-r--r-- | gnu/egcs/gcc/configure | 202 | ||||
-rw-r--r-- | gnu/egcs/gcc/configure.in | 16 | ||||
-rw-r--r-- | gnu/egcs/gcc/cp/Makefile.in | 2 | ||||
-rw-r--r-- | gnu/egcs/gcc/cp/decl.c | 16 |
6 files changed, 138 insertions, 115 deletions
diff --git a/gnu/egcs/gcc/Makefile.in b/gnu/egcs/gcc/Makefile.in index 4a33567a95f..5386abc9fa3 100644 --- a/gnu/egcs/gcc/Makefile.in +++ b/gnu/egcs/gcc/Makefile.in @@ -1248,6 +1248,11 @@ stmp-multilib-sub: then (cd tmpcopy; $(AR_FOR_TARGET) x ../$(LIBGCC1)); \ else true; \ fi +# Some versions of ar (specifically the one in RISC/os 5.x), create an +# unwritable table of contents file, and then print an error message when +# the second ar command tries to overwrite this file. To avoid the error +# message from ar, we make sure all files are writable. + -(cd tmpcopy; chmod +w * > /dev/null 2>&1) (cd tmpcopy; $(AR_FOR_TARGET) x ../$(LIBGCC2)) (cd tmpcopy; $(AR_FOR_TARGET) $(AR_FLAGS_FOR_TARGET) ../tmplibgcc.a *$(objext)) rm -rf libgcc2.a tmpcopy @@ -1478,7 +1483,7 @@ stmt.o : stmt.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ loop.h $(RECOG_H) toplev.h output.h varray.h except.o : except.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ function.h insn-flags.h $(EXPR_H) $(REGS_H) hard-reg-set.h \ - insn-config.h $(RECOG_H) output.h except.h toplev.h + insn-config.h $(RECOG_H) output.h except.h toplev.h intl.h expr.o : expr.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ $(REGS_H) insn-flags.h insn-codes.h $(EXPR_H) insn-config.h $(RECOG_H) \ output.h typeclass.h hard-reg-set.h toplev.h hard-reg-set.h except.h diff --git a/gnu/egcs/gcc/config/m68k/m68k.c b/gnu/egcs/gcc/config/m68k/m68k.c index 98f51978ac8..447ff3f8da2 100644 --- a/gnu/egcs/gcc/config/m68k/m68k.c +++ b/gnu/egcs/gcc/config/m68k/m68k.c @@ -374,6 +374,11 @@ output_function_prologue (stream, size) mask &= ~ (1 << (15 - FRAME_POINTER_REGNUM)); num_saved_regs--; } + if (flag_pic && regs_ever_live[PIC_OFFSET_TABLE_REGNUM]) + { + mask |= 1 << (15 - PIC_OFFSET_TABLE_REGNUM); + num_saved_regs++; + } #if NEED_PROBE #ifdef MOTOROLA @@ -581,6 +586,11 @@ output_function_epilogue (stream, size) nregs++; mask |= 1 << regno; } + if (flag_pic && regs_ever_live[PIC_OFFSET_TABLE_REGNUM]) + { + nregs++; + mask |= 1 << PIC_OFFSET_TABLE_REGNUM; + } offset = foffset + nregs * 4; /* FIXME : leaf_function_p below is too strong. What we really need to know there is if there could be pending diff --git a/gnu/egcs/gcc/configure b/gnu/egcs/gcc/configure index 4d166a61717..79f3f47a4ee 100644 --- a/gnu/egcs/gcc/configure +++ b/gnu/egcs/gcc/configure @@ -1310,7 +1310,7 @@ else fi # Find some useful tools -for ac_prog in mawk gawk nawk awk +for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 @@ -3019,7 +3019,7 @@ for machine in $build $host $target; do xm_file="alpha/xm-alpha-interix.h xm-interix.h" xmake_file="x-interix alpha/t-pe" - tmake_file="alpha/t-interix" + tmake_file="alpha/t-interix alpha/t-ieee" if test x$enable_threads = xyes ; then thread_file='posix' fi @@ -3032,6 +3032,7 @@ for machine in $build $host $target; do alpha*-*-linux-gnuecoff*) tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h" target_cpu_default="MASK_GAS" + tmake_file="alpha/t-ieee" gas=no xmake_file=none gas=yes gnu_ld=yes @@ -3039,7 +3040,7 @@ for machine in $build $host $target; do alpha*-*-linux-gnulibc1*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h" target_cpu_default="MASK_GAS" - tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe" + tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -3050,7 +3051,7 @@ for machine in $build $host $target; do alpha*-*-linux-gnu*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h" target_cpu_default="MASK_GAS" - tmake_file="t-linux alpha/t-linux alpha/t-crtbe" + tmake_file="t-linux alpha/t-linux alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -3061,7 +3062,7 @@ for machine in $build $host $target; do alpha*-*-netbsd*) tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h" target_cpu_default="MASK_GAS" - tmake_file="alpha/t-crtbe" + tmake_file="alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -3070,6 +3071,7 @@ for machine in $build $host $target; do alpha*-*-openbsd*) # default x-alpha is only appropriate for dec-osf. target_cpu_default="MASK_GAS" + tmake_file="alpha/t-ieee" ;; alpha*-dec-osf*) @@ -3082,6 +3084,7 @@ for machine in $build $host $target; do extra_passes="mips-tfile mips-tdump" fi use_collect2=yes + tmake_file="alpha/t-ieee" case $machine in *-*-osf1*) tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h" @@ -3104,6 +3107,7 @@ for machine in $build $host $target; do ;; alpha*-*-vxworks*) tm_file="${tm_file} dbx.h alpha/vxworks.h" + tmake_file="alpha/t-ieee" if x$gas != xyes then extra_passes="mips-tfile mips-tdump" @@ -3114,7 +3118,7 @@ for machine in $build $host $target; do alpha*-*-winnt*) tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h" xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h" - tmake_file=t-libc-ok + tmake_file="t-libc-ok alpha/t-ieee" xmake_file=winnt/x-winnt extra_host_objs=oldnames.o extra_gcc_objs="spawnv.o oldnames.o" @@ -3129,7 +3133,7 @@ for machine in $build $host $target; do alpha*-dec-vms*) tm_file=alpha/vms.h xm_file="${xm_file} alpha/xm-vms.h" - tmake_file=alpha/t-vms + tmake_file="alpha/t-vms alpha/t-ieee" ;; arc-*-elf*) extra_parts="crtinit.o crtfini.o" @@ -6036,7 +6040,7 @@ fi echo $ac_n "checking for strerror in -lcposix""... $ac_c" 1>&6 -echo "configure:6040: checking for strerror in -lcposix" >&5 +echo "configure:6044: checking for strerror in -lcposix" >&5 ac_lib_var=`echo cposix'_'strerror | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -6044,7 +6048,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcposix $LIBS" cat > conftest.$ac_ext <<EOF -#line 6048 "configure" +#line 6052 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -6055,7 +6059,7 @@ int main() { strerror() ; return 0; } EOF -if { (eval echo configure:6059: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6063: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -6078,12 +6082,12 @@ fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:6082: checking for working const" >&5 +echo "configure:6086: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6087 "configure" +#line 6091 "configure" #include "confdefs.h" int main() { @@ -6132,7 +6136,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:6136: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -6153,21 +6157,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:6157: checking for inline" >&5 +echo "configure:6161: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF -#line 6164 "configure" +#line 6168 "configure" #include "confdefs.h" int main() { } $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:6171: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6175: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -6193,12 +6197,12 @@ EOF esac echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:6197: checking for off_t" >&5 +echo "configure:6201: checking for off_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6202 "configure" +#line 6206 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -6226,12 +6230,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:6230: checking for size_t" >&5 +echo "configure:6234: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6235 "configure" +#line 6239 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -6261,19 +6265,19 @@ fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:6265: checking for working alloca.h" >&5 +echo "configure:6269: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6270 "configure" +#line 6274 "configure" #include "confdefs.h" #include <alloca.h> int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:6277: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6281: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -6294,12 +6298,12 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:6298: checking for alloca" >&5 +echo "configure:6302: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6303 "configure" +#line 6307 "configure" #include "confdefs.h" #ifdef __GNUC__ @@ -6327,7 +6331,7 @@ int main() { char *p = (char *) alloca(1); ; return 0; } EOF -if { (eval echo configure:6331: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -6359,12 +6363,12 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:6363: checking whether alloca needs Cray hooks" >&5 +echo "configure:6367: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6368 "configure" +#line 6372 "configure" #include "confdefs.h" #if defined(CRAY) && ! defined(CRAY2) webecray @@ -6389,12 +6393,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6393: checking for $ac_func" >&5 +echo "configure:6397: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6398 "configure" +#line 6402 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6417,7 +6421,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6421: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6444,7 +6448,7 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:6448: checking stack direction for C alloca" >&5 +echo "configure:6452: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6452,7 +6456,7 @@ else ac_cv_c_stack_direction=0 else cat > conftest.$ac_ext <<EOF -#line 6456 "configure" +#line 6460 "configure" #include "confdefs.h" find_stack_direction () { @@ -6471,7 +6475,7 @@ main () exit (find_stack_direction() < 0); } EOF -if { (eval echo configure:6475: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6479: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 else @@ -6496,17 +6500,17 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:6500: checking for $ac_hdr" >&5 +echo "configure:6504: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6505 "configure" +#line 6509 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6510: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6514: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6535,12 +6539,12 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6539: checking for $ac_func" >&5 +echo "configure:6543: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6544 "configure" +#line 6548 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6563,7 +6567,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6571: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6588,7 +6592,7 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:6592: checking for working mmap" >&5 +echo "configure:6596: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6596,7 +6600,7 @@ else ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext <<EOF -#line 6600 "configure" +#line 6604 "configure" #include "confdefs.h" /* Thanks to Mike Haertel and Jim Avera for this test. @@ -6736,7 +6740,7 @@ main() } EOF -if { (eval echo configure:6740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else @@ -6764,17 +6768,17 @@ unistd.h sys/param.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:6768: checking for $ac_hdr" >&5 +echo "configure:6772: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6773 "configure" +#line 6777 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6778: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6782: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6804,12 +6808,12 @@ done strdup __argz_count __argz_stringify __argz_next do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6808: checking for $ac_func" >&5 +echo "configure:6812: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6813 "configure" +#line 6817 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6832,7 +6836,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6836: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6861,12 +6865,12 @@ done for ac_func in stpcpy do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6865: checking for $ac_func" >&5 +echo "configure:6869: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6870 "configure" +#line 6874 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6889,7 +6893,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6893: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6897: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6923,19 +6927,19 @@ EOF if test $ac_cv_header_locale_h = yes; then echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 -echo "configure:6927: checking for LC_MESSAGES" >&5 +echo "configure:6931: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6932 "configure" +#line 6936 "configure" #include "confdefs.h" #include <locale.h> int main() { return LC_MESSAGES ; return 0; } EOF -if { (eval echo configure:6939: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* am_cv_val_LC_MESSAGES=yes else @@ -6956,7 +6960,7 @@ EOF fi fi echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6 -echo "configure:6960: checking whether NLS is requested" >&5 +echo "configure:6964: checking whether NLS is requested" >&5 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" @@ -6976,7 +6980,7 @@ fi EOF echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6 -echo "configure:6980: checking whether included gettext is requested" >&5 +echo "configure:6984: checking whether included gettext is requested" >&5 # Check whether --with-included-gettext or --without-included-gettext was given. if test "${with_included_gettext+set}" = set; then withval="$with_included_gettext" @@ -6995,17 +6999,17 @@ fi ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for libintl.h""... $ac_c" 1>&6 -echo "configure:6999: checking for libintl.h" >&5 +echo "configure:7003: checking for libintl.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7004 "configure" +#line 7008 "configure" #include "confdefs.h" #include <libintl.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7009: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:7013: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -7022,19 +7026,19 @@ fi if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6 -echo "configure:7026: checking for gettext in libc" >&5 +echo "configure:7030: checking for gettext in libc" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7031 "configure" +#line 7035 "configure" #include "confdefs.h" #include <libintl.h> int main() { return (int) gettext ("") ; return 0; } EOF -if { (eval echo configure:7038: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7042: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* gt_cv_func_gettext_libc=yes else @@ -7050,7 +7054,7 @@ echo "$ac_t""$gt_cv_func_gettext_libc" 1>&6 if test "$gt_cv_func_gettext_libc" != "yes"; then echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6 -echo "configure:7054: checking for bindtextdomain in -lintl" >&5 +echo "configure:7058: checking for bindtextdomain in -lintl" >&5 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -7058,7 +7062,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <<EOF -#line 7062 "configure" +#line 7066 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7069,7 +7073,7 @@ int main() { bindtextdomain() ; return 0; } EOF -if { (eval echo configure:7073: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7077: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7085,12 +7089,12 @@ fi if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6 -echo "configure:7089: checking for gettext in libintl" >&5 +echo "configure:7093: checking for gettext in libintl" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6 -echo "configure:7094: checking for gettext in -lintl" >&5 +echo "configure:7098: checking for gettext in -lintl" >&5 ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -7098,7 +7102,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <<EOF -#line 7102 "configure" +#line 7106 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -7109,7 +7113,7 @@ int main() { gettext() ; return 0; } EOF -if { (eval echo configure:7113: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7117: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7148,7 +7152,7 @@ EOF # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7152: checking for $ac_word" >&5 +echo "configure:7156: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7182,12 +7186,12 @@ fi for ac_func in dcgettext do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7186: checking for $ac_func" >&5 +echo "configure:7190: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7191 "configure" +#line 7195 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7210,7 +7214,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7237,7 +7241,7 @@ done # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7241: checking for $ac_word" >&5 +echo "configure:7245: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7273,7 +7277,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7277: checking for $ac_word" >&5 +echo "configure:7281: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7305,7 +7309,7 @@ else fi cat > conftest.$ac_ext <<EOF -#line 7309 "configure" +#line 7313 "configure" #include "confdefs.h" int main() { @@ -7313,7 +7317,7 @@ extern int _nl_msg_cat_cntr; return _nl_msg_cat_cntr ; return 0; } EOF -if { (eval echo configure:7317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7321: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* CATOBJEXT=.gmo DATADIRNAME=share @@ -7336,7 +7340,7 @@ fi if test "$CATOBJEXT" = "NONE"; then echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6 -echo "configure:7340: checking whether catgets can be used" >&5 +echo "configure:7344: checking whether catgets can be used" >&5 # Check whether --with-catgets or --without-catgets was given. if test "${with_catgets+set}" = set; then withval="$with_catgets" @@ -7349,7 +7353,7 @@ fi if test "$nls_cv_use_catgets" = "yes"; then echo $ac_n "checking for main in -li""... $ac_c" 1>&6 -echo "configure:7353: checking for main in -li" >&5 +echo "configure:7357: checking for main in -li" >&5 ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -7357,14 +7361,14 @@ else ac_save_LIBS="$LIBS" LIBS="-li $LIBS" cat > conftest.$ac_ext <<EOF -#line 7361 "configure" +#line 7365 "configure" #include "confdefs.h" int main() { main() ; return 0; } EOF -if { (eval echo configure:7368: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7372: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -7392,12 +7396,12 @@ else fi echo $ac_n "checking for catgets""... $ac_c" 1>&6 -echo "configure:7396: checking for catgets" >&5 +echo "configure:7400: checking for catgets" >&5 if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7401 "configure" +#line 7405 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char catgets(); below. */ @@ -7420,7 +7424,7 @@ catgets(); ; return 0; } EOF -if { (eval echo configure:7424: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7428: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_catgets=yes" else @@ -7442,7 +7446,7 @@ EOF # Extract the first word of "gencat", so it can be a program name with args. set dummy gencat; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7446: checking for $ac_word" >&5 +echo "configure:7450: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7478,7 +7482,7 @@ fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7482: checking for $ac_word" >&5 +echo "configure:7486: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7515,7 +7519,7 @@ fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7519: checking for $ac_word" >&5 +echo "configure:7523: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7550,7 +7554,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7554: checking for $ac_word" >&5 +echo "configure:7558: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7608,7 +7612,7 @@ fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7612: checking for $ac_word" >&5 +echo "configure:7616: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7642,7 +7646,7 @@ fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7646: checking for $ac_word" >&5 +echo "configure:7650: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7678,7 +7682,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:7682: checking for $ac_word" >&5 +echo "configure:7686: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7771,7 +7775,7 @@ fi LINGUAS= else echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6 -echo "configure:7775: checking for catalogs to be installed" >&5 +echo "configure:7779: checking for catalogs to be installed" >&5 NEW_LINGUAS= for lang in ${LINGUAS=$ALL_LINGUAS}; do case "$ALL_LINGUAS" in @@ -7799,17 +7803,17 @@ echo "configure:7775: checking for catalogs to be installed" >&5 if test "$CATOBJEXT" = ".cat"; then ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6 -echo "configure:7803: checking for linux/version.h" >&5 +echo "configure:7807: checking for linux/version.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7808 "configure" +#line 7812 "configure" #include "confdefs.h" #include <linux/version.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:7813: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:7817: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -8043,7 +8047,7 @@ fi # Figure out what assembler alignment features are present. echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6 -echo "configure:8047: checking assembler alignment features" >&5 +echo "configure:8051: checking assembler alignment features" >&5 gcc_cv_as= gcc_cv_as_alignment_features= gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas @@ -8164,7 +8168,7 @@ fi echo "$ac_t""$gcc_cv_as_alignment_features" 1>&6 echo $ac_n "checking assembler subsection support""... $ac_c" 1>&6 -echo "configure:8168: checking assembler subsection support" >&5 +echo "configure:8172: checking assembler subsection support" >&5 gcc_cv_as_subsections= if test x$gcc_cv_as != x; then # Check if we have .subsection @@ -8204,7 +8208,7 @@ fi echo "$ac_t""$gcc_cv_as_subsections" 1>&6 echo $ac_n "checking assembler instructions""... $ac_c" 1>&6 -echo "configure:8208: checking assembler instructions" >&5 +echo "configure:8212: checking assembler instructions" >&5 gcc_cv_as_instructions= if test x$gcc_cv_as != x; then set "filds fists" "filds mem; fists mem" diff --git a/gnu/egcs/gcc/configure.in b/gnu/egcs/gcc/configure.in index b42d6ea3d00..936261f18d9 100644 --- a/gnu/egcs/gcc/configure.in +++ b/gnu/egcs/gcc/configure.in @@ -586,7 +586,7 @@ changequote([,])dnl xm_file="alpha/xm-alpha-interix.h xm-interix.h" xmake_file="x-interix alpha/t-pe" - tmake_file="alpha/t-interix" + tmake_file="alpha/t-interix alpha/t-ieee" if test x$enable_threads = xyes ; then thread_file='posix' fi @@ -599,6 +599,7 @@ changequote([,])dnl alpha*-*-linux-gnuecoff*) tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h" target_cpu_default="MASK_GAS" + tmake_file="alpha/t-ieee" gas=no xmake_file=none gas=yes gnu_ld=yes @@ -606,7 +607,7 @@ changequote([,])dnl alpha*-*-linux-gnulibc1*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h" target_cpu_default="MASK_GAS" - tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe" + tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -617,7 +618,7 @@ changequote([,])dnl alpha*-*-linux-gnu*) tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h" target_cpu_default="MASK_GAS" - tmake_file="t-linux alpha/t-linux alpha/t-crtbe" + tmake_file="t-linux alpha/t-linux alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -628,7 +629,7 @@ changequote([,])dnl alpha*-*-netbsd*) tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h" target_cpu_default="MASK_GAS" - tmake_file="alpha/t-crtbe" + tmake_file="alpha/t-crtbe alpha/t-ieee" extra_parts="crtbegin.o crtend.o" xmake_file=none gas=yes gnu_ld=yes @@ -637,6 +638,7 @@ changequote([,])dnl alpha*-*-openbsd*) # default x-alpha is only appropriate for dec-osf. target_cpu_default="MASK_GAS" + tmake_file="alpha/t-ieee" ;; alpha*-dec-osf*) @@ -649,6 +651,7 @@ changequote([,])dnl extra_passes="mips-tfile mips-tdump" fi use_collect2=yes + tmake_file="alpha/t-ieee" case $machine in *-*-osf1*) tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h" @@ -675,6 +678,7 @@ changequote([,])dnl ;; alpha*-*-vxworks*) tm_file="${tm_file} dbx.h alpha/vxworks.h" + tmake_file="alpha/t-ieee" if [ x$gas != xyes ] then extra_passes="mips-tfile mips-tdump" @@ -685,7 +689,7 @@ changequote([,])dnl alpha*-*-winnt*) tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h" xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h" - tmake_file=t-libc-ok + tmake_file="t-libc-ok alpha/t-ieee" xmake_file=winnt/x-winnt extra_host_objs=oldnames.o extra_gcc_objs="spawnv.o oldnames.o" @@ -700,7 +704,7 @@ changequote([,])dnl alpha*-dec-vms*) tm_file=alpha/vms.h xm_file="${xm_file} alpha/xm-vms.h" - tmake_file=alpha/t-vms + tmake_file="alpha/t-vms alpha/t-ieee" ;; arc-*-elf*) extra_parts="crtinit.o crtfini.o" diff --git a/gnu/egcs/gcc/cp/Makefile.in b/gnu/egcs/gcc/cp/Makefile.in index 66cdf83df59..fd5434c1539 100644 --- a/gnu/egcs/gcc/cp/Makefile.in +++ b/gnu/egcs/gcc/cp/Makefile.in @@ -36,7 +36,7 @@ # It defines the c++ interface name. It should be changed when the # c++ interface is changed. -INTERFACE = 1 +INTERFACE = 2 # Variables that exist for you to override. # See below for how to change them for certain systems. diff --git a/gnu/egcs/gcc/cp/decl.c b/gnu/egcs/gcc/cp/decl.c index 8afa043173c..24968d0a670 100644 --- a/gnu/egcs/gcc/cp/decl.c +++ b/gnu/egcs/gcc/cp/decl.c @@ -3516,7 +3516,8 @@ duplicate_decls (newdecl, olddecl) TREE_TYPE (olddecl) = build_exception_variant (newtype, TYPE_RAISES_EXCEPTIONS (oldtype)); - if ((pedantic || ! DECL_IN_SYSTEM_HEADER (olddecl)) + if ((pedantic || (! DECL_IN_SYSTEM_HEADER (olddecl) + && ! DECL_IN_SYSTEM_HEADER (newdecl))) && DECL_SOURCE_LINE (olddecl) != 0 && flag_exceptions && ! compexcepttypes (TREE_TYPE (newdecl), TREE_TYPE (olddecl))) @@ -11048,18 +11049,17 @@ grokdeclarator (declarator, declspecs, decl_context, initialized, attrlist) && TREE_CODE (TYPE_NAME (type)) == TYPE_DECL && ANON_AGGRNAME_P (TYPE_IDENTIFIER (type))) { + tree oldname = TYPE_NAME (type); + tree t; + /* FIXME: This is bogus; we should not be doing this for cv-qualified types. */ - /* For anonymous structs that are cv-qualified, need to use - TYPE_MAIN_VARIANT so that name will mangle correctly. As - type not referenced after this block, don't bother - resetting type to original type, ie. TREE_TYPE (decl). */ - type = TYPE_MAIN_VARIANT (type); - /* Replace the anonymous name with the real name everywhere. */ lookup_tag_reverse (type, declarator); - TYPE_NAME (type) = decl; + for (t = TYPE_MAIN_VARIANT (type); t; t = TYPE_NEXT_VARIANT (t)) + if (TYPE_NAME (t) == oldname) + TYPE_NAME (t) = decl; if (TYPE_LANG_SPECIFIC (type)) TYPE_WAS_ANONYMOUS (type) = 1; |